How and why you should start programming
Let's think about why you should even consider a career in the field of computer science. Other than the fact that it's a nice job that you can do easily from the comfort of your home, it just so happens to be a well-payed job as well.
The average annual salary of a good American programmer is about $80,000. If you're really good, you'll get even higher pay, like $110,000. Also, if you are not afraid to start a business, well, the sky is the limit, we all know how many billionaires there are in IT.
Wages are high for the following reasons:
- Thanks to us IT people businesses are able to work faster, serve their clients faster, and sell millions of products daily in e-shops. The costs to keep machines operational are very low, and it could be your software that makes them work! Companies will gladly pay high prices for your services since they'll be able to get back to mass production in a short amount of time.
- Working in IT is an expert field and requires high-quality knowledge.
Choosing your programming language
For starters, pick one of the following languages (links will open online courses, the basics of each language are available for free):
Java - The alpha and omega for businesses, a modern language with a virtual machine, that works on all platforms (PC with Windows, Linux, Mac, phones, printers, ATMs...). Oracle says that Java powers about 3 billion devices. Java is open-source which means it's completely free and anyone can contribute to it. I recommend Java if you want to work as a company employee since wages are great, but be prepared to enterprise complicated libraries.
C# .NET - I'm sure others will forgive me if I say that C# is "Microsoft's version of Java" (in my humble opinion). Since the language is maintained by a single company, its libraries are clearer and better documented than Java. C# has a lot of constructs that make programming clearer and more efficient, but you'd have to learn all about them first. For corporate, use you'd have to purchase several different licenses depending on what it is you're doing. C# is sort of a "middle ground" in my opinion.
PHP - Nowadays, it's a good-quality and fully-featured language designed for creating websites. ICT.social is written in PHP, as well as other popular websites like Facebook, Wikipedia, and so on. It is said that it powers a large part of the Internet. I recommend PHP if you're starting your own business. It's low-cost and the language and frameworks it uses are relatively simple. You could easily get a job as a PHP programmer as well, but the pay isn't as great.
Other languages
Mainly when working on web-related content, you'll have to mix your main (server) language with other, usually simpler, languages:
- HTML - A simple markup language that actually has nothing to do with programming. We use it to mark certain bits of texts on a website and give meaning to them. We mainly use HTML to create templates.
- CSS - This language originated from HTML and used to style HTML marks, i.e. the visual design of the site. It is also not a "real" programming language.
- JavaScript - This language is used mainly for web plugins (slideshows, galleries, chats, loading stuff in the background), however, you can write servers in it as well.
- SQL - A database language designed to query data from a database.
For most applications, you will be able to get by with the basics of the "other" languages listed above, as they're not complicated. Don't waste too much time on them, I highly suggest focusing mainly on one of the primary languages mentioned in the first part of this article. You will, however, have to improve your use of SQL later on because with more complex applications come more complex database queries.
The ICT.social network was created to provide all of the information necessary for you to succeed. One might even say that it is something like a Wikipedia for programmers with real insight on the current state of the industry.
This is a brief version of the original article. For more details, you can read the full version at https://www.ict.social/…and-websites