C++ programmer as second job

Hi guys,

I am an electrotechnical engineer and I am programming machines ( programmable logic controllers).

I had programmed at basic level on borland C. I have notions on C syntax, C++ classes.

At work I use sometimes, pointers, some structures that are similar with c++ classes, also I am familiar with data types, working with bytes so the C program
is somehow similar with machine programming language.

In the past I had started to learn making web sites with html,CSS, PHP, and I had realized my own online website but I had understood at that time that I have to achieve more knowledge and I realized that I can't keep up with both, my job and web design because there are going in two different ways.

Please help and guide me to enter in the IT world gradually, because from my point of view you can have more financial freedom in the IT field and fewer contextual social variables. I want to try with freelancing at the beginning, I think that could be a good starting.

But I had read over a C++ beginner book of BRIAN OVERLAND and I haven't find
any useful real application, just working with variables, constant, just console
variables, something approaching with something from real world was working with files.

Please help me guiding in with first steps that I had to make to start sustaining myself from C/C++ programming, because the most of internet tutorials
are at beginning level without any real application.

Thank you,
What platform do you want to work on?

For Windows the definite guide is the book by Charles Petzold which comes with a simple Notepad clone.
https://www.amazon.co.uk/Programming-Windows-Developer-Reference-Charles-ebook/dp/B00JDMP71S/ref=la_B000APETXO_1_5?s=books&ie=UTF8&qid=1515404343&sr=1-5&refinements=p_82%3AB000APETXO

https://www.amazon.co.uk/Programming-Windows-95-Microsoft-programming/dp/1556156766/ref=la_B000APETXO_1_14?s=books&ie=UTF8&qid=1515404343&sr=1-14&refinements=p_82%3AB000APETXO

For real apps you might have a look at some open source projects on github,
or apps like Notepad++, Gimp, Inkscape, Sigil, Calibre, LibreOffice though they might be too difficult at the beginning.
Another source worth looking at is codeproject.com though many C++ examples are in MFC or for Windows API
Many years ago, we interviewed a guy from a similar background as yours. He worked for a company that made scientific instruments and he was their software guy. He was looking to become a full time developer.

Back then we gave a C test to applicants. We explained at great length that the purpose of the test was just to see where their knowledge of the language fell. Questions ranged from very basic to quite difficult. Since he was new, we didn't expect him to finish the test or even get half the questions correct.

The recruiter came over about 20 minutes later and said that the applicant was very distraught. He wasn't able to answer any of the questions and he wanted to basically run out the door. The easy questions were very basic: stuff like:
int i=5;
int *p = &i;
*p = 6;
After executing this code, what is the value of i?


Anyway, we calmed him down and said "okay, maybe you aren't ready for a job with us, but we've blocked out the time for an interview and you've blocked out time for an interview, so why not lets us talk to you, see what you know and we can give you some pointers on what we think you should do next to work in the field."

What we found was that, although he understood some syntax of the language, he had absolutely no training in computer science.

So that's where you seem to be. I urge you to learn about computer science. More importantly, pick up a book in data structures and algorithms and study it carefully.

Sorry for the long-winded response.,
Hello,

I came from a scientific background and wanted to try coding. I actually picked up an old textbook

C++ for scientists and engineers

Having some knowledge of C++ is good, but I strongly recommend to get a textbook that includes the latest features of C++. Many of them are major language changes (e.g. C++11 came up with nullptr instead of NULL - many programmers still use the latter! - and smart pointers and move semantics...) And that's not to mention C++17 which came out in Dec, 2017!!!

I always throw out the Deitel series out to my clients and friends, because they work for me and they try to keep up to date as much as possible but if you have any book that works for you and teaches the latest concepts, go for it.

In addition, don't just learn C++; C++ is more of a tool. Once you know how to use the tool you'll have to learn what you can make with it. For example, you could go and learn Qt (pronounced "cute") which is a C++-based environment that can be used to create mobile apps and sophisticated applications with Graphical User Interfaces. (LG is a company that uses Qt for much of its development). One thing nice about Qt is that it offers an open source option which you can download, use for free and use to learn the library without having to pay.

Anyway, I hope this helps :/
Joe
www.concordspark.com



Last edited on
Registered users can post here. Sign in or register to post.