|
I had some free time on my hands lately and will likely have even more come Xmas and new year and I really wanted to start learning something. My first thought was to practice guitar a bit more but apparently a parrot beak is actually powerful enough to cut the cords :.(
So i started thinking, maybe I should start reading/learning about programing. I never really liked the idea of learning C or any other language but it's something that I will generally be decent at and i heard stories of people being able to do freelance programing for a bit of extra bucks after only 1 or 2 years of learning.
I know this is a community that is filled with programer so I would like to just throw a few question out there:
Is it possible to learn to use a programing language in about 1.5 to 3 years with an average of 2 hours or so per day ( considering that you are a person with average intelligence ) ? Is it easy enough to find freelance jobs for small sums of money if you learned only for that long ? And if so, what is best to learn... i know there are a few there, C is what all the people i know work in but i would like to have an opinion.
I have a few relatively free months, might as well work on something other than Hitman high scores...
|
Whether or not you can learn to program (regardless of language) in 1.5-3 years depends on you. If you have an affinity for using computers and thinking logically etc, then yeah, it shouldn't be a big problem, assuming you're actually interested and like to play around with it. Reading a textbook only gets you so far when it comes to programming, you need to sit down and work with it.
As for freelancing, I personally believe it's pretty hard to get freelancing work as a C programmer. Java or C# is more common in regular business work, python etc more effective for smaller jobs. If you get hired as a freelancing C programmer, it's probably to do some maintenance on some legacy system, I can't imagine a more terrible job to get.
|
|
What programming requires is alot of practice and to learn to do it properly from the beginning. If you can find a good source to learn then it's definitely possible to properly learn the most important things within that time, If you dedicate daily time to it, it's definitely possible.
Freelancer.com (who just recently bought vworker.com) is a platform where you can get smaller, or even bigger, jobs in all kinds of fields (at least I know that vworker (formerly rent-a-coder) changed from just being programming based to all kinds of stuff and I've already written articles for people and such things).
edit: as the first reply said, you may also see what language you would prefer the most, each language has its advantages as to what to do with it.
|
On December 04 2012 22:57 Tobberoth wrote: Whether or not you can learn to program (regardless of language) in 1.5-3 years depends on you. If you have an affinity for using computers and thinking logically etc, then yeah, it shouldn't be a big problem, assuming you're actually interested and like to play around with it. Reading a textbook only gets you so far when it comes to programming, you need to sit down and work with it.
As for freelancing, I personally believe it's pretty hard to get freelancing work as a C programmer. Java or C# is more common in regular business work, python etc more effective for smaller jobs. If you get hired as a freelancing C programmer, it's probably to do some maintenance on some legacy system, I can't imagine a more terrible job to get.
Well what about complexity ? Is there any major learning difference between C# and Java or Python and Java ? Or is it on a purely preferential basis and some people might learn/work in C# with more ease and other in Java ?
I have been playing a bit with the website java section, thank you for informing me about it. I doubt it has a lot of content since it seems to actually be add free and not a "Subscribe for 20$" thing but might help me get an idea of what this is all about.
|
On December 05 2012 00:35 Aterons_toss wrote:Show nested quote +On December 04 2012 22:57 Tobberoth wrote: Whether or not you can learn to program (regardless of language) in 1.5-3 years depends on you. If you have an affinity for using computers and thinking logically etc, then yeah, it shouldn't be a big problem, assuming you're actually interested and like to play around with it. Reading a textbook only gets you so far when it comes to programming, you need to sit down and work with it.
As for freelancing, I personally believe it's pretty hard to get freelancing work as a C programmer. Java or C# is more common in regular business work, python etc more effective for smaller jobs. If you get hired as a freelancing C programmer, it's probably to do some maintenance on some legacy system, I can't imagine a more terrible job to get. Well what about complexity ? Is there any major learning difference between C# and Java or Python and Java ? Or is it on a purely preferential basis and some people might learn/work in C# with more ease and other in Java ?
There are differences ranging from OS/platform support to syntax errors. All three mentioned languages are easier than C.
But more importantly... If you understand Java you'll probably understand C# (and vice versa) at a reasonable enough level to write simple code for either. If you understand C you'll probably understand both java and C# at a simple level. If you understand programming itself, which language you use doesn't really matter, you can pick up the others very quickly.
|
Learning C# (replace C# with Java if you want) in that timeframe should be easy. There's less pitfalls for beginners than in languages like C/C++. You should get a solid book on the dos and don'ts in C# though. That'll speed up the learning process by a ton. Sadly I can't recommend you one because I learned C# after having a lot of programming experience in other languages, so I didn't need one.
Learning another language when you already know one is usually very easy.
Learning C/C++ as your first language is pretty tough, I wouldn't recommend that at all. You would probably save time if you started with C# and then switched to C/C++.
|
On December 05 2012 01:37 Logo wrote:Show nested quote +On December 05 2012 00:35 Aterons_toss wrote:On December 04 2012 22:57 Tobberoth wrote: Whether or not you can learn to program (regardless of language) in 1.5-3 years depends on you. If you have an affinity for using computers and thinking logically etc, then yeah, it shouldn't be a big problem, assuming you're actually interested and like to play around with it. Reading a textbook only gets you so far when it comes to programming, you need to sit down and work with it.
As for freelancing, I personally believe it's pretty hard to get freelancing work as a C programmer. Java or C# is more common in regular business work, python etc more effective for smaller jobs. If you get hired as a freelancing C programmer, it's probably to do some maintenance on some legacy system, I can't imagine a more terrible job to get. Well what about complexity ? Is there any major learning difference between C# and Java or Python and Java ? Or is it on a purely preferential basis and some people might learn/work in C# with more ease and other in Java ? There are differences ranging from OS/platform support to syntax errors. All three mentioned languages are easier than C. But more importantly... If you understand Java you'll probably understand C# (and vice versa) at a reasonable enough level to write simple code for either. If you understand C you'll probably understand both java and C# at a simple level. If you understand programming itself, which language you use doesn't really matter, you can pick up the others very quickly.
Ok, thank you for the clarification.
|
If you would like to do some sort of programming job without requiring a lot of education, I would recommend web design. The entry barrier to make usable products in web design is relatively easy to obtain, there's a lot of work available, and it's a lot more enjoyable as well. For other types of programming, it's not hard to pick up a programming language, but the challenging part is to write code that is clean and easy to read and runs efficiently as well. Due to this, there isn't a major demand for lesser experienced programmers, and the pay isn't great either.
If you would still like to do programming, I would recommend starting with a language like Python just to learn the ropes of programming, and then add C# or Java. Eventually move up to Ruby. I found Ruby a bit more diffiicult to learn due to its unique syntax, but once you get the hang of it, programming becomes much easier and much faster. The downside of Ruby is performance, so combine it with something like C.
|
On December 05 2012 00:35 Aterons_toss wrote:I have been playing a bit with the website java section, thank you for informing me about it. I doubt it has a lot of content since it seems to actually be add free and not a "Subscribe for 20$" thing but might help me get an idea of what this is all about.
I am not 100% sure as I use AdBlock and don't see any ads anywhere anyway, but http://www.khanacademy.org/ is also for free and provides tons and tons of content and knowledge in all kinds of fields. I believe they have computer science as part of their program, aswell, so go check that out.
|
Freelancing as a programmer (or IT Tech) is very doable. However there is freelancing and freelancing.
You can freelance for small companies that want a certain job done either because they need someone from the outside or they don't have the numbers to pay a full IT service. Web dev, App dev, Pentesting, Network Artchitecture etc. Pay is correct, workhours can be variable and work environment depends on your supervisor.
And then there is freelancing as an expert. Some people can make 1K per hour of work just because they are among the few 50 people that can repair, develop, analyse (an so on) the system they know in a short time. When a major website like CNN goes down, they call someone like that. This guy jumps in the next flight and works almost 24h/7 until the work is done. You need years of experience to pretend to a job like this.
|
On December 05 2012 10:17 Otolia wrote: And then there is freelancing as an expert. Some people can make 1K per hour of work just because they are among the few 50 people that can repair, develop, analyse (an so on) the system they know in a short time. When a major website like CNN goes down, they call someone like that. This guy jumps in the next flight and works almost 24h/7 until the work is done. You need years of experience to pretend to a job like this.
That's more of a role of the consultant than a freelancer however I suppose at that level, it's a distinction without a difference.
|
Keep in mind exchange rate as well as at the lowest level you will be competing against indian/eastern european programmers who can work at a wage that is unlivable for you.
|
On December 05 2012 13:52 haduken wrote: Keep in mind exchange rate as well as at the lowest level you will be competing against indian/eastern european programmers who can work at a wage that is unlivable for you. I am as eastern Europe as you can get in terms of poor-nes if you don't count Russia and Ukraine ;p Also, it's not like i really care for the money, more like i want a time sink that could actually be useful.
|
My favourite part about programming is that 'usefulness' is simply a function of your own creativity and imagination.
|
|
|
|