As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I have learned in my University time Pascal and C and RedHat Linux/Unix .
To get quickly one job, i started learning Microsoft Visual Basic 6.0 for speed in development etc. In that time, with C its like more time consuming and i was not confident to use it for job purpose, where most of the companies demand fast/rapid development.
After that i had problems with my companies because they want web applications, then i started using PHP which is also great, because customers demand web projects and they expect Google like applications in short time frame, which is doable because PHP gives that speed and its huge community.
To explain my need for Go-lang is following:
PHP the syntax is friendly compared to C/Pascal.
I was very happy to learn Python, but its syntax is very much different then C.
Which just not gonna work with me to accept and really learn it better and better.
I have tried to learn Ruby, at-least so that i can have the knowledge of Python
like syntax, but i really skipped Ruby because of 2x time slower then PHP
Therefore,
Is Go-lang is the perfect choice for SPEED vs PHP vs Ruby, for Web development + Gtk?
Alas, I'd love to have 1 asset that I could use for all conditions but it's just not available in the world of computing. You're going to have to learn 2 or more.
PHP is very widely used, so you might as well stick with it. If you can create decent webapps using it, go for it. I would suggest learning C/C++ too so you can write any high-performance modules using that and call them from your PHP code. That's probably the best of all worlds for your webapps.
If you wanted to write for desktops, I think you'll be best off learning C++ with Qt (and look at Wt) (as it appears you're a Linux dev), or C#/VB.NET for Windows.
For mobiles, learn C/C++ as you can write apps in that no matter which platform even if you have to put up with some platform-dependant extensions - you either have to learn Java for Android, Objective-C for iOS, or (well we're not quite sure what MS has planned for Windows Phone 8, but I hear they like native code again, that means C++/CX). You can see where I'm going with this!
so anyway, if you're happy with PHP then keep with it. There is a ton of code out there that runs PHP so it's not like you're working with some bleeding-edge or hardly-used obscure language.
Well, this question is obviously quite subjective, but I find PHP can always be as fast as it needs to be. I spend a lot of time looking up on how my code can be optimised further.
Some good optimisation tips: http://labs.phurix.net/posts/50-php-optimisation-tips-revisited
Of course, in the end, everything depends on what you're willing to do for extra speed and what's practical or not.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
We have a website that originated in 2001, which started with some simple classic ASP scripts that enabled website viewers to dynamically configure products by following a step by step process of choosing product accessories, etc, using Access as the data source. The website expanded eventually to currently keep track of a simple, small encrypted member list with usernames and passwords to enable access to restricted areas of the website.
In the future, we're planning an expansion of the website and the backend will need an overhaul obviously to a more modern, scalable framework. The first inclination is to convert the classic ASP VBscript to VB.net. Another option would be to convert the backend functionality using PHP and MySQL.
Which would be easiest to convert to, simplest to maintain and scalable for a future expansion of functionalities?
It is a matter of preference and what the team is comfortable with. If you are better aligned towards ASP then stick to that and vice virsa. There is no 'right' answer or 'right' language for the job. They both do practically the same thing albeit in different ways.
There's lots of answers. If you already have developers, then a heavy influence would be what they are comfortable with.
If you don't already have a team, then there's lots of factors to consider. You need to learn the different languages, frameworks, platforms, & databases.
Languages. This is the set of core commands that the computer recognizes. Big ones are:
VBScript
VB.NET
C#
PHP
RUBY
Frameworks. Frameworks are large libraries that do a lot of the work for you. The core of the framework will still be one of the above languages, but there are also commands that call library routines. Big ones are:
ASP.NET & ASP.NET MVC (runs VB.NET, C#.NET, & other samller languages)
CAKE (runs PHP)
Ruby on Rails (runs Ruby)
Platforms. This is the type of server running your website. The two big ones are:
Windows (can run almost anything)
Apache (can not run MS products like ASP.NET)
Databases. Several good options here. Big ones are:
MS SQL Server (requires license to be purchased, and also requires
Windows)
MySQL (Free license)
MS Access (wouldn't recommend for anything but the smallest of
projects)
There are many, many more that could be listed. I tried to hit all the big ones.
Now, with all that being said, Ruby on Rails (RoR) is the most used for new development right now (according to Google trends). Lots of online libraries & help can be found.
PHP is huge, but is declining.
If you use ASP.NET, I would recommend using MS SQL Server as the a lot of the wizards fail when using MySQL.
If you use PHP, CAKE, or RoR, then MySQL would probably be more compatible with existing libraries.
Good luck with your upgrade.
IMHO PHP is equivalent to Classic ASP for many reasons, including that it is a scripting language. If you are going to move away from Classic ASP, rather than move horizontally, I would progress by choosing .Net or Ruby.
PHP is the easiest language for writing websites and it does not lack any needed features. Development is faster and cheaper with PHP. There are more PHP coders than .NET on account of the easy learning curve. Other languages may be "faster", but unless you have a very very large scale application this speed difference is irrelevant.
You will probably be making your site from the ground up and the difference in effort to "convert" your code won't matter.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I need to develop a CRM system within 2 months recently. But I'm still a student and have no experience in developing such a complex system. I did alot of researches on how to develop a CRM system, but I face some problems on designing the system.
The problems that I faced are:
Does a CRM system use any framework for development? (eg: DooPHP, Yii, Zend, and so on)
How to ensure the system is secure? (use OpenSSL?)
What are the non-functionality that I need to bear in mind?
For your guys information, the CRM that I gonna develop is for a small company use. However, I hope that the system is fast in response and secure, as this is what we want when using a web application. It is ok for me to use PHP, JSP or ASP.Net.
If anyone developed the similar system before, kindly share your experience with us. If possible, share your code here.
Thanks...
A CRM system can be quite complex. In fact, I worked on a custom CRM system and the codebase is literally by far greater than 100000 lines of code. Two months can be challenging depending on what functionality you'll need.
Using a framework is up to you. I once tested XAF from DevExpress which aim to help at classic CRM/LOB tasks unless some details get not too complex. OpenSSL is only an implementation, but if the data should be safe, then one key point would be using SSL along with good authentication and authorization. Number three: that depends. A good logging framework is always worse the work.
Have you considered using an open CRM system to start over with? There is jfire or vTiger for example.
I think the best way to understand one system is to review some open source projects:
http://www.sugarcrm.com/crm/
http://www.opencrx.org/
And much more :
http://www.focus.com/briefs/top-10-open-source-crm-solutions/
Your CRM should be easy to implement but don't take anything for granted. You will have a chance to learn a lot of things in terms of language features and technology when developing such software. If you are looking forward to it, not a problem, you can easily do it.
As far as your questions.
CRM Does not have to use any framework. If you are familiar with one, good for you. You can use it to your advantage and it will be helpful.
Stick with common security features that are used in any language, particularly the language that you use. Do not be obsessed with it. You will learn a few things as you go.
No sure about the non-functionality. But be careful to stick to the features only. Do not overdo things that will increase complexity and the time it will require to complete. Implement what is asked for.
Any language will do. I personally like PHP. ASP.NET can be quite challenging. There are a lot of things that you think will work and they are quite pain to implement (if you are not a guru already). So depending on your experience and if you worked with any software development before, it is not daunting but to be honest, you must have some somewhere development experience. There is nothing strange in it.
Make sure you are well familiar with basic data types such as float, double etc. You can introduce big errors if you use them wrong.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
WordPress, Joomla, and Drupal are all in PHP. These are also by far the most widely used CMSs out there. CMSs in other languages (Plon in Python, Hippo in Java, Radiant in Ruby) only have a small fraction of that popularity. This gap is not as dramatic when it comes to other tools of web development, like frameworks, where many popular powerful frameworks exist in those languages (Django, Rails, Play, Spring Roo..etc.). Is there a particular reason for this?
I would say, at least :
Many think PHP is easy and that anyone can hack some stuff in a PHP application -- which means many will use a PHP CMS thinking they'll be able to fix / adapt stuff if needed.
PHP is free (opened, and costs no money)
same for MySQL and Apache, which are generally used with it.
Those CMSes are free (opened, and cost no money)
They have a important communities
Which means its quite easy to get support
And there are lots of plugins available
There are lots of cheap hosting services that provide PHP
Far less provide JAVA / .NET / Ruby / Python
PHP is a robust language that is forgiving to newbies. In my opinion, a lot of people begin their programming journey through learning the basics in PHP. As PHP has grown, it has become a truly object oriented language that is more than capable of efficiently running CMS. Further, PHP's integration and long history with the most popular web server software in the world, Apache, ensures that the CMS can easily be installed with little work.
PHP's original implementation was released in 1995, the first of its kind. Development of frameworks takes a long time. If you start developing today, it will take you atleast 2 years to reach the level wordpress has reached today given that you "copy" wordpress. RoR was released in 2004 or 5. You can see the difference.
In essence, PHP has been around for a lot longer than a few of those languages (especially Ruby) and it's a vastly more common "base" install on low-end servers. As such, it's inevitably going to be targeted a lot more by people wanting to create such CMSes.
That said, without wishing to comment on the CMSes you list, popular does not necessarily equate to good.
I'm going to say that they're likely as popular as they are because they are written in PHP.
PHP has a very large install base, and is available on nearly every hosting platform, unlike Python & Ruby. The barrier to entry is low for someone setting up a website, when the hosting provider provides a script to install a PHP CMS in a couple of clicks.
As a CMS (or any package) becomes more popular, if it is open source as all those PHP CMS applications are, it will attract more developers which may result in more features and more popularity. Rinse, repeat. Case in point: Drupal.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 12 years ago.
It seems to me that everyone on the Internet is talking about PHP/ROR/Python, but few care to mention ASP.NET. Ironically, here in China, most books concerning web development on the shelf in the bookstores are about ASP.NET. I just want to know what is "wrong" with ASP.NET on these web forums. I am really new to web development, and I've just learned a little PHP, and haven't touched anything ASP.NET yet. I would like to know the pros and cons of PHP and ASP.NET. Thank you very much!
There is nothing wrong with ASP.NET. Except the fact it's a Microsoft technology, so some communities avoid to mention it, or mention it only to say it's evil, without giving a real explanation.
Everything depends on the communities. Here, on StackOverflow, I see more questions about ASP.NET than about PHP. There are other websites which are more ASP.NET oriented.
If you want to choose what to use, try both. This is the only way for you to make a real choice, without being influenced by an opinion of a person who thinks that PHP sucks and is used only by beginners who don't know anything about programming, or a person who thinks that everything related to Microsoft is bad.
I'm assuming that you are referring to the ASP.NET, since ASP is obsolete and deprecated in some sense.
It's really difficult to compare PHP/Python/Ruby to ASP.NET. It would make more sense to compare frameworks. PHP has some popular frameworks called Zend and CakePHP. Python has Django. Ruby got, of course, Ruby on Rails. ASP.NET has MVC.
There is nothing wrong with ASP.NET. In fact, ASP.NET MVC2 is very neat. If you use it with Visual Studio, you basically don't need anything else, since you can debug your application with the visual studio webserver that comes with the IDE. MSDN has a lot of documentation on the MVC framework and a lot of people on stackoverflow are experts.
One downside is that you will need to host your site on Microsoft Server, which is typically more costly than Linux. If you are used to Linux, you will also need to consider some ramp up time and learning cost, because Windows Server is quite different. You might also want to use SQL Server 2008 because Microsoft technologies usually go well together.
There are a lot of things you need to consider when you want to create website with something you are not familiar with. I recommend you to just get started somewhere. If you are learning in order to acquire skills that may help you get some job offers, learn the skills you need. If ASP.NET is something used a lot in China, I would recommend you to pick up ASP.NET MVC and start developing, although this will cost you some money up front. Otherwise, go with PHP/Python/Ruby because there are tons of sites that use these languages and frameworks based on these languages.
For ASP.NET MVC2, this is a good starting point.
By the way, stackoverflow is built on ASP.NET MVC + SQL Server 2008 + C#
You got an IDE full of features and access to whole .NET infrastructure if using asp.net comparing to php.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 13 years ago.
I'd like to make a website, it's not a huge project, but I'm a bit out of the web design loop. The last time I made a website was probably around 2002. I figure the web frameworks and tools have come a ways since then. It's mostly the design aspect that I'd like it to make easier. I can do the backend language in any language.
My question is:
What are some tools or web frameworks that make the design aspect of making a website easier. It could be a framework in php/python/ruby.
As far as tools go, free/open source is preferred, but I wouldn't mind looking at good commercial alternatives.
You'll get many different subjective answers for your question, but as for me I would recommend django. It is flexible unlike CMS and the admin saves you alot of pain.
For PHP, I like the CMS Drupal and have found it to be very fast in getting a site up and running. Drupal also has a ton of modules to do almost anything you want. It is also very customizable (although that takes a little reading to figure out how to do it).
Ruby's de facto standard web framework is Ruby on Rails. It's a straight web framework, not a CMS like Drupal, but it doesn't take very much work to get a simple site up and running. It uses convention over configuration to be that simple, so you've got to learn the conventions to really understand what's going on.
I haven't used a Python web framework (except the one I wrote back in college), but I've heard good things about Django.
If you have experience with Java, there's a Groovy framework called Grails that is similar to Ruby on Rails, but runs on Java servers.
I once played around with CodeIgniter for a couple of weeks and found it pretty easy and fast to jump into.
Check out this list of PHP frameworks:
http://woork.blogspot.com/2008/11/20-great-php-framework-for-developers.html
Joomla is also said to be amazing, although that's more of a Content Management System than just a framework. But it makes the design of the site really simple.
It really depends on a couple things:
What are you familiar with? You indicated that you've done some web development in the past. What did you use? If you were using classic ASP, then learning ASP.NET should be less of a jump for you.
What are you trying to create? If all you need are static HTML files with a tiny bit of functionality, you could try learning PHP as it's pretty quick and easy to get going. If you need light database access, then maybe Ruby on Rails will be your cup of tea.
With that being said, I'd recommend the following in no particular order (just because I've tried them and they're all pretty decent):
Ruby on Rails
ASP.NET / ASP.NET MVC
PHP
django on Google App Engine gets you free(up to a point) and scalable hosting