Loading...
Answers
MenuProgramming language for web platform?
Answers
NOT Wordpress! Facebook uses PHP among other languages, if that tells you anything.
Every programmer will be bias toward what they like and what they are used to coding with.
The bigger question for you is, have you completed your due diligence? Is there a real need for another crowd funding platform? Why would yours be so different that it would stand out among the others? Who is you target market? What is your unique selling proposition? How big is your potential market? Should you go vertical or horizontal? You may have already answered these and the two dozen other questions every entrepreneur must ask before they waste valuable time and money to become another business start up statistic.
Assuming you have a strong grasp of where you are heading and a solid strategic blueprint to be able to predict your growth, the last thing I will leave you with is this. The programing language is not nearly as important as your database structure and IT infrastructure for the purpose of scale. Not to say the language is not important - all three components work together. Spend time on the other two and work backwards.
If you would like to discuss this further at no charge, use the link below. I provide a free 30 minute consultation to first time callers.
https://clarity.fm/kevinmccarthy/FreeConsult
Best regards,
Kevin McCarthy
www.kevinmccarthy.com
PHP would probably give you the biggest pool of available developers which will help keep the cost down. If you pair that with a modern compiled framework like phalconphp.com and stay with php version 5.5 with its opcode and memory optimizations, you'll be able to run your site in low end ec2 instances for a long time.
I think some of the above answers are really helpful. Just to throw in my 2c:
- watch out for wordpress, yes. If you need a nice CMS for a website, it's a fantastic platform. It can be extended a bit, but if you are going to build a big, custom system using wordpress as a framework, you will likely outgrow it quickly and it will be painful
- as for the other platforms, I think that you can look at this in 2 ways:
1) It's great advice to consider gravitating towards the platform/framework that your chosen developers are expert in. But then, you also need a framework that 'fits' so you need to balance this with your business objectives. So, I'd refine the advice to say, 'make sure your team is expert with the stack that you have chosen, and that you've chosen a stack based on your business objectives and not just because your team is good at it'
2) please consider carefully your true objectives, and their priority. something like 'good for scalability' can mean so many different things. a php site can support millions of users, but a Ruby site can probably support those users with less tweaking. meanwhile, a node/mongo site can probably handle massive concurrent load pretty well. each has drawbacks and strengths, so you need to consider how much scalability you really need. if you can quantify this it will help so much in choosing a stack.
It's also great to consider the culture/developer availability, etc. Node developers are harder to find these days, and php developers are everywhere, for example. A MS stack can be great if you are integrating with certain type of systems, and a ruby stack can be great for rapid development.
I would recommend you really try to figure out your true needs, both short term and long term, and create a document that describes them. From there, choosing a stack/language should be much easier!
Here's a video on that exact subject: http://www.youtube.com/watch?v=ct8AI0YqFlw
Good luck!!
Focus on the team that will build the web platform, not the programming language. Choose a team that will be able to:
1) Understand the requirements
2) Build the product
3) Support you (this is the most important)
Seems that your budget is quite limited. If you do not spend your initial money wisely, then you'll spend way more for fixing and expanding the platform. Work with a team with a proven portfolio and proven experience. Look at their portfolios and their clients. Consider south-eastern Europe companies, too.
As a technical note, do not choose WordPress for such a purpose, as it does not scale up efficiently. Anything else from what you proposed is fine.
PHP has the largest developer community, however, also consider ASP.NET or Java, which are backed by huge companies. Facebook is not using PHP. It uses a private version of PHP which compiles to C++.
I believe RoR (Ruby on Rails) is a good option to choose from the trio you have mentioned, but apart from that you have the following options to choose from:
PYTHON: Python has become one of the most popular programming languages at present and it shows no signs of disappearing. This language is also well-known as the best language for creating AI and machine learning based web applications. Furthermore, the growing of data science has improved the development of Python as a programming language. Python is now beating JavaScript as a teaching language in institutes. Websites using Python: Facebook, Microsoft, Dropbox, Mozilla, Netflix, YouTube, and other Google projects are partially using Python.
JAVA: The next programming language is Java. Java is considered as the most stable language and it has survived at the peak in programming industry for 20 years ago. So, what makes Java success? This is to write once and run anywhere, thanks to its versatility and ubiquity. Besides, Java has a good reputation for its high cross-platform compatibility. The Java Virtual Machine (JVM) enables it to work on a variety of devices and platforms. Most of fortune 500 companies have built their back-end application using Java. Websites using Java: ebay.com, linkedin.com, aws.amazon.com, aliexpress.com, bitbucket.org, ebay.co.uk
JAVASCRIPT: It is not wrong to say JavaScript is the most trending programming language for web development at present. In fact, most full-stack developers prefer to use this language. JavaScript is commonly used to create interactive effects inside web browsers. Along with CSS and HTML, JavaScript is one of three core technologies of the World Wide Web (www). It plays an especially important role in front-end development as well. In addition, it is used in popular web frameworks like React.JS, Node.JS, and AngularJS. Websites using JavaScript for front-end development: Amazon, Facebook, YouTube, Wikipedia, Google, Pinterest, MSN.com, Wikipedia.org, Bing.
PHP: PHP stands for Hypertext Pre-processor and is a preferred server scripting language for web development. This language was founded in 1995 and has been involving throughout these years with a wide range of popular PHP web frameworks. Most PHP frameworks are free and offer strong security features. PHP has many outstanding advantages like modules and libraries which insure dynamic software development. For these reasons, most of the content management systems and websites are written using PHP. Websites using PHP: Yahoo, Flickr, Wikipedia, Facebook, Istockphoto, Tumblr, Friendster, Manifera
GO: Go, also known as Golang, is a programming language designed by Google since 2007. Go is developed to build reliable, simple, and efficient software with ease. Go is like C, but with structural typing, garbage collection, memory safety, and CSP-style concurrency. Websites that use Golang: Google, Facebook, Twitter, Youtube, Apple, Dropbox, The Economist, BBC, The New York Times, IBM, Docker
C: First launched in the 1970s, C is one of the oldest languages that is still alive and works very well today. C has had a huge influence on the computer programming landscape as it is the core of every machine. There are plenty of programming languages in the C family that have been either originated in C or deeply influenced by its paradigms, syntax, and constructs. These languages include C#, Objective-C and Java. Because C enables programmers to get close to the computer’s inner workings, C is still a favoured option for developing specialized high-performance apps. Moreover, C is commonly used for developing embedded systems and is the basis for the Linux operating system. Website using C: Google.com, Youtube.com
SWIFT: The next candidate in the list of best languages for web development is Swift. Swift was introduced in 2014 by Apple. It is a brand-new language used to build powerful, high-performance, native iOS, MacOS, tvOS, watchOS, iPadOS, z/OS and Linux applications. Swift has been growing speedily and now ranking as the 13th most favoured programming language by pull request. Swift is an exceptionally good language to learn. The reason is that Swift is a popular open source tool and is very safe as its design encourages programmers to write clean and easy-to-read code consistently. And perhaps the biggest advantage of Swift is its speed. In many head-to-head competitions, Swift was 2.6 times faster than Objective-C and 8 times faster than Python.
RUST: Another brand-new programming language for web development is Rust. Although Rust is relatively new, it does not mean Rust is not a valuable language to learn. According to a survey by Stack Overflow in 2018, Rust was the most loved programming language and 78% of Rust developers saying that they will keep working with it. Rust was developed by Mozilla Corporation, and like C and C++, it is used for programming low-level systems. Rust encourages developers to write safe and readable code and has a high level of security. Websites using Rust: Dropbox, Coursera, Sentry, Postmates, Rambiers
KOTLIN: Kotlin is a super cool programming language designed by the famous company JetBrains. This is a preferred language for Android Development, and it has beaten Java in a single go. Kotlin is fully inter-operable with Java and has no limitations. It can be used to replace Java for Android Applications, server-side development, and much more. It also works great with all existing Java frameworks, libraries and operates with the same performance level as Java.
Besides if you do have any questions give me a call: https://clarity.fm/joy-brotonath
For scalability, robust community support, and future team building, I'd recommend considering Node.js. Its non-blocking, event-driven architecture makes it highly scalable, allowing your crowdfunding platform to handle a large number of pages efficiently. Additionally, Node.js has a vibrant and active community, providing ample resources for support and continued development.
If you're leaning towards Node.js, you might find this article on embedded system development insightful: https://www.cleveroad.com/blog/embedded-software-development/. While it focuses on embedded software, it touches on key principles relevant to web development, such as optimization techniques and real-time considerations. Ultimately, whichever option you choose, thorough research and careful consideration of your project's requirements will set you on the path to success. Best of luck with your crowdfunding platform!
Related Questions
-
What learning path do I have to take to become a "full-stack" web developer?
If I was just starting out, I'd consider learning Meteor (https://www.meteor.com/). It's just entered version 1.0 and after working with it for a little less than a year I do have some issues with it but it still makes for a very solid framework that gets you up and running very fast. You would only need to learn Javascript, and you can slowly work your way towards nodejs from there (which Meteor is based on) if you want to, or you could get the basics down and focus on learning design if you prefer.KD
-
How can a small offshore development company find companies/software sales people to sell their service in the US/UK?
My company does a lot of consulting with offshore firms who are looking for a way to generate new business, so I hear this question a lot. My first reaction is that you need to totally reverse your mindset when you talk about your own company. You mentioned that you have: a great software developers team, proven track record, passion, real value But, everyone says that. There a 10,000 companies that have those things, so a customer isn't going to notice it. You need to figure out what your company is best at (doesn't have to be technical) and present it as a solution to a specific problem that clients have. Maybe a speciality, or really good project management, really good communications, a special expertise or experience, a personality, experience with a certain type of client.. really anything.. But, there must be some thing that makes your company 'special' otherwise you will be lost in the mix. Don't worry about things like rates, or the fact that you have 'great' developers. Those are generic. Think about why a client would really choose you, and try to build on that! After you understand your company identity, it gets much easier to identify and engage marketing channels because you understand your target.DH
-
How can I manage my developers' performance if I don't understand IT?
Whenever you assign them a task, break down the task into small chunks. Make the chunks as small as you can (within reason, and to the extent that your knowledge allows), and tell your devs that if any chunks seem large, that they should further break those chunks down into bite size pieces. For instance, for the overall task of making a new webpage, _you_ might break it down as follows: 1) Set up a database 2) Make a form that takes user email, name, and phone number and adds them to database 3) Have our site send an email to everyone above the age of 50 each week When your devs take a look at it, _they_ might further break down the third step into: A) Set up an email service B) Connect it to the client database C) Figure out how to query the database for certain users D) Have it send emails to users over 50 You can keep using Asana, or you could use something like Trello which might make more sense for a small company, and might be easier to understand and track by yourself. In Trello you'd set up 4 columns titled, "To Do", "Doing", "Ready for Review", "Approved" (or combine the last two into "Done") You might want to tell them to only have tasks in the "Doing" column if they/re actually sitting at their desk working on it. For instance: not to leave a task in "Doing" overnight after work. That way you can actually see what they're working on and how long it takes, but that might be overly micro-manager-y At the end of each day / week when you review the tasks completed, look for ones that took a longer time than average (since, on average, all the tasks should be broken down into sub-tasks of approximately the same difficulty). Ask them about those tasks and why they took longer to do. It may be because they neglected to further break it down into chunks as you had asked (in which case you ask them to do that next time), or it may be that some unexpected snag came up, or it may be a hard task that can't be further broken down. In any case, listen to their explanation and you should be able to tell if it sounds reasonable, and if it sounds fishy, google the problem they say they encountered. You'll be able to get a better feel of their work ethic and honesty by how they answer the question, without worrying as much about what their actual words are. Make sure that when you ask for more details about why a task took longer, you don't do it in a probing way. Make sure they understand that you're doing it for your own learning and to help predict and properly plan future timelines.LV
-
How much should I charge to develop a WordPress site?
Take the # of hours it takes you to do it and charge $50/hour. That's the price. Eventually you can charge $100/hour but that will require a bigger customer. If the customer is small < $1M in gross sales per year - charge $50/hour If the customer id medium < $1-5M / sales - charge $75 Over $5M - charge $100 The challenge you'll face is clearly defining the expectations and handoff so that you're not stuck doing stuff that you can charge for and always getting interrupted from past customers.DM
-
How do you manage a developer who's slow, especially when you have a small budget and you don't feel like you'll get things done in time?
Usually Programmers are only slow when they don't know how to solve a particular problem. So they will spend a lot of time researching and a lot of trial & errors to solve a problem. It is important that before you engage a programmer on a project, you break down the entire project into simple, easy to understand modules. Let him give you an estimate of how many hours he will require to complete each of the modules. Example: a typical site will have a login module, registration, My account, profile etc. So let him estimate how much he will require to do the login. You can go even detail here. (e.g. how much extra time if you were to implement Facebook/Twitter Login?). Once he start developing, track his progress closely and make sure he is following his given timeline. If he goes over his budgeted time on a module, talk with him and see what went wrong. It is often seen that they may be wasting their time on something very insignificant that you may have asked him to implement, but you can totally go by without it too. So by understanding what is taking longer time, you will be able to prioritise things better. You definitely need some tools to get this done. Google Spreadsheet or Excel works just fine. But if you don't mind spending a few bucks there are many agile project management tools that you might look into. Here is a list, google them all and sign up for trials: * AgileZen * Agile Bench * Assembla * AssiTrack * Blossom * Basecamp * Breeze * DoneDone * Eidos * Fogbugz * GreenHopper * Jugggla * Kanbanpad * Pivotal Tracker Or the reason why he is slow can be purely non-technical. Sometime your developer may don't share the same level of enthusiasm as you about the idea that you are working on. They often don't often see the "bigger picture" (since you don't share everything with them explicitly). If you can somehow get them excited about what he is a part of, it will work like a drug :) He will work day and night without questioning you. But you need to work equally as hard as him. The moment he sees that you are the boss and he is just the guy doing work for you -- his mentality will shift from being part of something to being the low paid developer. Ultimately its all about motivation and making him a part of your venture. After all he deserves it, if he is really playing a crucial role in the entire development.SK
the startups.com platform
Copyright © 2025 Startups.com. All rights reserved.