SitePoint Sponsor

User Tag List

Results 1 to 23 of 23
  1. #1
    SitePoint Enthusiast Sanctus's Avatar
    Join Date
    Jan 2012
    Posts
    44
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    CHOOSING ONE TO USE.

    I have been doing research on the programming languages PHP, Python and Java. I have also looked at different frameworks like Codeigniter, CakePHP, Django and etc. Choosing what to go with that will best suit my needs has become a nightmare of sorts. (_)' I believe I am leaning more toward Python. The platform PyCharm based on the framework Django is what I will most likely use later on. I have mixed experience in web development already. Driving visitor traffic is yet another.

    My personal purpose for learning a programming language is to expand my capabilities in order to create superb sites. It is not meant as a career, but to be used as a tool to promote and push it forward. As an example, people learn foreign languages for a variety of reasons. Not necessarily to become a linguist. These sites are not meant for personal use like family or e-commerce. I cannot afford to pay someone $5k+ to build what I would like to have. I know what some of you might say, "Why not use a content management system like that of Wordpress, Joomla, Drupal, ModX and etc.?" Simple answer: they sucked. It was restrictive. Most added extra complexity where it should not have been. It is fine for a basic website like a blog. Anything else you have to hack it to-death, add extensions... “Buy a template.” someone utters. So-called premium CMS specific templates are horrible to me as well. These are just my opinions of course. If you have other ideas, I am all ears?

    Which language would you recommend? Why? Does it have a future? Is it well supported? Have other better ideas? Etc. Thank you gentlemen for your patience and time reading this thread! I look forward to hearing your honest answers.

  2. #2
    SitePoint Enthusiast Sanctus's Avatar
    Join Date
    Jan 2012
    Posts
    44
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I decided to go with Python. PHP is the elephant in the room. I have never been a real fan of it however. I know my questions above have been asked numerous times. Still was hoping for extra opinions before jumping in.

    | _Platform__|__Framework_|
    PyCharm _w/_ Django
    PyDev _w/_ Django

  3. #3
    SitePoint Member
    Join Date
    Apr 2005
    Posts
    20
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    There is no right or wrong here. Ultimately you should try them all and see which one fits best for you and your requirements. I've dabbled with a lot of different languages and frameworks over the years. I personally dislike php though they have a couple of very nice frameworks. I also felt uncomfortable in the Ruby/ROR ecosystem for reasons I couldn't quite put my finger on. For now, I've settled on Python/Django (and I do a little .NET and Java when I need to). You wont find much chatter about Python or its frameworks on Sitepoint though.

  4. #4
    Non-Member algozone's Avatar
    Join Date
    Jul 2006
    Location
    Hackensack, NJ
    Posts
    119
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    For web application PHP wins. It is designed for web.

  5. #5
    SitePoint Enthusiast cyber247's Avatar
    Join Date
    Dec 2007
    Posts
    60
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    good topic lets hear more posts considering the topic to gain maximum benefits from all users
    ALWAYS LOOKING FORWARD

  6. #6
    SitePoint Member
    Join Date
    Apr 2005
    Posts
    20
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by algozone View Post
    For web application PHP wins. It is designed for web.
    Actually I would pick python + one of its web frameworks or .NET over PHP any day of the week...

  7. #7
    SitePoint Enthusiast Sanctus's Avatar
    Join Date
    Jan 2012
    Posts
    44
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

  8. #8
    SitePoint Wizard
    Join Date
    Dec 2003
    Location
    USA
    Posts
    2,582
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)
    As Lee134 said, there is no right answer. It all depends on the project.

    For example, my normal development environment is nginx/PHP/MySQL/Wordpress for server-side and HTML5/CSS/Javascript (usually with jQuery) for client-side.

    However, I had a project recently where I thought node.js would perform a bit better (since the project was basically the definition of what node.js was meant to do).

    Often times I'll develop desktop software, where PHP doesn't work, so I'll use C# or Flex.

    On rare occasion I may need to develop for something that doesn't support C# or Flex (Flash), so I'll use Java or C++.

    It's best to learn a variety of things and then deploy the one that suits the task at hand. Just picking your favorite and trying to force that to fit every project is asking for trouble.

  9. #9
    om nom nom nom Stomme poes's Avatar
    Join Date
    Aug 2007
    Location
    Netherlands
    Posts
    10,234
    Mentioned
    47 Post(s)
    Tagged
    1 Thread(s)
    Which language would you recommend? Why? Does it have a future? Is it well supported? Have other better ideas?
    You picked a good language to use. It's a fairly clean and straightforward language (not many "gotchas"), it has a thriving community, and while Django is the name you hear the most, there's a really healthy group of all sorts of frameworks you can choose from. Python has a future, and it's fairly well supported. It's used for most of the applications running on the Gnome Desktop Environment, and has decent integration with google junk if you're writing stuff that has to work with google apps.

    If you have to work with existing Java code, you can stick with python as Jython. If you're using .NET, you have IronPython. If you want to write for desktop, there's PyJamas...

    One thing to keep in mind, if you happen to be outside a framework and have run across mod_python... leave immediately : ) Apache never did so well with mod_python. In general, cheap crappy hosters tend to have PHP and getting something else on there has been more of a pain, but that's only the sort of problem you get in the "pay peanuts get monkeys" area anyway. With modern frameworks like Django you get the WSGI stuff built-in. : )

    If you're on LinkedIn, there are some great Python Community groups for discussion and whatnot.

  10. #10
    Community Advisor ULTiMATE's Avatar
    Join Date
    Aug 2003
    Location
    Bristol, United Kingdom
    Posts
    2,158
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by algozone View Post
    For web application PHP wins. It is designed for web.
    That means absolutely nothing in this context.

    PHP is dying, and it's been dying for a while now. With Python, ASP.NET and many other frameworks becoming stronger and stronger PHP dies a little every single day. Once people stop abusing WordPress into being a CMS PHP will suffer tremendously.

  11. #11
    SitePoint Zealot
    Join Date
    Apr 2009
    Location
    Wenatchee, WA
    Posts
    101
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Once people stop abusing WordPress into being a CMS PHP will suffer tremendously.
    Like thats going to happen any time soon (speaking as one of those people) - it works too well, too easily.

    The biggest thing holding Python back on the web, IMO, is that some hosts don't really support it - either they have a fairly old version installed, or don't officially back it the way they do PHP. As an example, on bluehost you're pretty much on your own w/ regards to python - they have an old version, but good luck getting any support for it. Almost everything in cPanel there is oriented around PHP - or RoR.

  12. #12
    SitePoint Enthusiast Sanctus's Avatar
    Join Date
    Jan 2012
    Posts
    44
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by memilanuk
    The biggest thing holding Python back on the web is that some hosts don't really support it...
    My host supports all major languages that including Python. It is pretty hard not to find someone who does not anymore unless they are a small company with few choices. PHP is not the tricked out guy in a suit who has it all made. It does have several issues too. Choosing a language should not be which one is the best. Any language is good at what it does. Pick the one that fits your needs then just go with it. 2.x (2.7.2) Py. is still heavily used. 3.x I guess you could say is similar to HTML5 where not everyone is using it just yet; besides the fact that HTML5 has not been completed. Change is inevitable. Let history be the judge there.

  13. #13
    SitePoint Wizard bronze trophy Immerse's Avatar
    Join Date
    Mar 2006
    Location
    Netherlands
    Posts
    1,661
    Mentioned
    7 Post(s)
    Tagged
    1 Thread(s)
    Use the best tool for the job which you're comfortable with.

    If you prefer Python over PHP, then go with Python. At the very least you'll be comfortable with the language you're working with.

    A friend of mine recently tried to convince me that Erlang is the way forward for the web. I scoffed, until I saw what kind of performance they're getting on a slightly older server with a bunch of Erlang-powered sites running on it. We're talking orders of magnitude faster than any other language I've ever used (or heard about). I was very, very impressed (and envious: "my stuff doesn't do that!").

    Remember, a couple of years ago everyone was talking about how Ruby (and especially Rails) was going to 'kill' PHP. Didn't really happen, did it?

    Yet I'm sticking with my PHP. It's what I know, it's what I'm comfortable with, it's not going away soon (never mind what others might think, it's still the most used server-side language on the web, and the language is evolving and maturing at an incredible rate) and there's enough there for me to continue learning and improving my skills.

    To sum up: choose what you feel comfortable with, not just the cool new kid on the block (just because it's the new kid) or the established, venerable language that everyone else uses (just because everyone else uses it).



    Edit>
    Wow, I wrote a whole post without a single smiley!

  14. #14
    SitePoint Enthusiast Sanctus's Avatar
    Join Date
    Jan 2012
    Posts
    44
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Immerse
    ....just because it's the new kid...
    Python is far from being new. Figured I would mention that for those of you out there who do not know any better.

  15. #15
    SitePoint Wizard bronze trophy Immerse's Avatar
    Join Date
    Mar 2006
    Location
    Netherlands
    Posts
    1,661
    Mentioned
    7 Post(s)
    Tagged
    1 Thread(s)
    I know

    Nor was Ruby when it burst onto the scene a while back. It was first released back in 1995, around the same time as PHP.
    But, you know what I meant ;D

  16. #16
    SitePoint Enthusiast Sanctus's Avatar
    Join Date
    Jan 2012
    Posts
    44
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    @Immerse
    I am giving Erlang a look now out of curiosity.

  17. #17
    SitePoint Wizard bronze trophy Immerse's Avatar
    Join Date
    Mar 2006
    Location
    Netherlands
    Posts
    1,661
    Mentioned
    7 Post(s)
    Tagged
    1 Thread(s)
    Quote Originally Posted by Sanctus View Post
    I am giving Erlang a look now out of curiosity.
    Be prepared, it's a freaky language.


    Code:
    -module(listsort).
    % Export 'by_length' with 1 parameter (don't care of the type and name)
    -export([by_length/1]).
     
    by_length(Lists) -> % Use 'qsort/2' and provides an anonymous function as a parameter
       qsort(Lists, fun(A,B) -> A < B end).
     
    qsort([], _)-> []; % If list is empty, return an empty list (ignore the second parameter)
    qsort([Pivot|Rest], Smaller) ->
        % Partition list with 'Smaller' elements in front of 'Pivot' and not-'Smaller' elements
        % after 'Pivot' and sort the sublists.
        qsort([X || X <- Rest, Smaller(X,Pivot)], Smaller)
        ++ [Pivot] ++  (╯□)╯︵ ┻━┻
        qsort([Y || Y <- Rest, not(Smaller(Y, Pivot))], Smaller).

    See, I understand nothing of what it says above. Apparently it's a quicksort algo. I edited it a bit to make it more... fun.

  18. #18
    om nom nom nom Stomme poes's Avatar
    Join Date
    Aug 2007
    Location
    Netherlands
    Posts
    10,234
    Mentioned
    47 Post(s)
    Tagged
    1 Thread(s)
    2.x (2.7.2) Py. is still heavily used. 3.x I guess you could say is similar to HTML5 where not everyone is using it just yet;
    Nothing wrong with Python 2x stuff, but some hosts have ancient 2.2 or older... that's just nasty, and you're missing out on functions there. 2.6, 2.7... should be just fine. And if the host is running 3x there's a 2-to-3 program out there somewhere.

    Re Erlang: zomg my husband has been playing around with it recently and it's like, the f*ck, no variables!? and it's not just a functional language, it's ALL FUNCTIONS zomg so a for loop is like.... zomg. A function. Heh and I thought the Haskell guys were freaky.
    Erlang can also be very, very, very slooooww (apparently it's fast so long as you know what its compiler likes). What's fast about it is how it deals with concurrency, and that's where people running lots of huge things on servers are looking at now.

    My husband has been programming imperatively, OO, and functional (in non-functional languages) for over 15 years... and he said the other night while pouring over an Erlang how-to that it will take him a long time to learn to think in the functional way Erlang works. It's just so different.

  19. #19
    SitePoint Wizard bronze trophy Immerse's Avatar
    Join Date
    Mar 2006
    Location
    Netherlands
    Posts
    1,661
    Mentioned
    7 Post(s)
    Tagged
    1 Thread(s)
    I tried - briefly - to learn Erlang. I failed miserably.

  20. #20
    om nom nom nom Stomme poes's Avatar
    Join Date
    Aug 2007
    Location
    Netherlands
    Posts
    10,234
    Mentioned
    47 Post(s)
    Tagged
    1 Thread(s)
    "Briefly" is likely the reason. If strange telephone nerds can learn it, you can too (have you seen the video with the three guys calling each other on their ancient 80's phones going "Hello Joe." "Hello Mike". "Hello Mike." "Hello Robert." "Hello Joe, Hello Mike." "Hello."? It's teh awesome)

    edit lawlz
    That's right, now you too can own the movie that "Bjarne used whenever he wanted to get rid of unwanted guests at CS lab parties"!

  21. #21
    SitePoint Wizard bronze trophy Immerse's Avatar
    Join Date
    Mar 2006
    Location
    Netherlands
    Posts
    1,661
    Mentioned
    7 Post(s)
    Tagged
    1 Thread(s)
    Quote Originally Posted by Stomme poes View Post
    "Briefly" is likely the reason
    Absolutely. I can be quite impatient at times, and now, if I don't 'get' a language straight away, I move on to something else.

    Haha, that was an awesome video indeed

  22. #22
    SitePoint Enthusiast
    Join Date
    Jul 2004
    Location
    Southern Georgia
    Posts
    26
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    python hosting

    I'm seriously considering the same, whether to become more proficient at PHP or look into Ruby or Python. I looked into bluehost. There python version is 2.4.x. Is this a problem? My host 1and1 is the same.

    I build small websites and for the most part have used Wordpress as a CMS if needed but I'd love to be able to create my own, or find a lighter CMS to use. I like the idea of learning python because it's more than just a web language as opposed to PHP.

  23. #23
    SitePoint Zealot
    Join Date
    Apr 2009
    Location
    Wenatchee, WA
    Posts
    101
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Python 2.4 is kind of old... but IIRC Bluehost runs CentOS, probably one of the older 5.x releases so thats not unexpected.

    Bluehost does have some knowledgebase articles that may be of use to you (I haven't tried them myself):

    https://my.bluehost.com/cgi/help/python-install (installing python 2.7 in your user directory)

    https://my.bluehost.com/cgi/help/530 (installing/using third-party Python modules)


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •