Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

When I was in college I learned how to program in C, C++, and Java. Currently, I'm a web developer using front end and back end technologies (HTML/CSS/JS, PHP, MYSQL). While the sorting algorithms and OOP concepts that I learned in college can be applied to web development, I'm looking for ways to keep up my knowledge of all languages. I enjoy programming in C-Style (C/C++/Java) languages and front-end/back-end technologies. Unfortunately, there aren't many options to use C-style languages to build websites. However, I would like to keep up my knowledge and skills in the languages I learned in college as I know they will continue to help me with my growth.

What resources are available to keep challenging myself in C-style languages that are relevant to web development? Would contract work for C-style languages be beneficial? Are there sites that offer algorithm challenges? Any help is appreciated. I'm also interested in how others that have asked themselves this have solved this problem.

share|improve this question
1  
Both C# and Java provides many tools and frameworks to develop web applications. Learning a new framework is always beneficial I would say and where I live it is quite easy to find a job if you are good at ASP.NET and the like. –  nilu Sep 8 '12 at 19:16
    
I thought PHP's syntax was derived from C's, so PHP is also a C-style language, isn't it? Otherwise, Java has great frameworks for web development (Hibernate, Spring are just the first two that come to my mind, and Hibernate is actually not web-specific so it would be useful to learn anyway). –  Giorgio Sep 8 '12 at 19:21
1  
there aren't many options to use C-style languages to build websites - I honestly boggled at this. C# and Java are incredibly widely used to build websites. They are probably two of the three most prevalent languages for that task (along with PHP, which you are currently using). –  Carson63000 Sep 9 '12 at 2:00
add comment

4 Answers

up vote 7 down vote accepted

For the sake of brevity, I'll address C++, but most of what I say applies to Java as well (if not more so).

It's worth noting that C and C++ can be used for web development, and there are even several C++ web frameworks. The thing is that most shared hosts don't support that kind of stuff, but you can easily deploy it on Virtual Private Servers.

Now, what I've been doing is simply reading books about topics that interest me. For example, there's a ton of C++ books. Namely:

and many more.

You'll find, as I did, that these in-depth books will give you a theoretical knowledge of C++ that you might never forget. The Scott Meyers "Effective" books will also teach you about using the language idiomatically and "effectively".

Another thing you can do is make c++ a favorite tag over at Stack Overflow and check out questions every once in a while, and try to answer them, or at least check out popular answers.

And last but not least, even as a web developer, you might sometimes get ideas about non-web applications you might want to develop; in that case, pick C++ as your language of choice. If you're lucky, you'll encounter some non-trivial challenges which (meeting them) will leave an important mark on your experience and knowledge.

On top of all that, you can always go over to GitHub and see if you can help some open-source projects, or at least try to understand some interesting code bases, such as Node.js.

Good luck.

share|improve this answer
    
This is very helpful. Thanks Yam. Nischay22's answer is also very insightful. I'm familiar with Nodejs so I'll look into that some more. Codechef.com and topcoder.com are great as well. Thanks guys. –  wwwuser Sep 8 '12 at 23:35
add comment

Subscribe to sites like Codechef.com, topcoder.com, etc. They will mail you twice-thrice a month about the latest algorithmic contests, take part in them using your the language of your choice

The best part is even if you are busy in web-dev their pinging will remind you writing code in C/C++ and the challenging puzzles will keep you thinking for a few days at least

share|improve this answer
add comment

Maybe there are - most back-end servers have the option to be extended using C/C++ code, generally for performance reasons, but that doesn't mean you can't start writing some of your web-serving code using C++ extensions to the main glue language.

Of course, you could also use C++ to write webservice services and use them from your web site code. Using Windows Web Services, gsoap, mongoose, cppcms or any of the other C++ web framework or libraries would be good for you.

Especially check out the WWS link as it describes Microsoft's position. If WWS is twice as fast and uses 1/8th the memory then you can fit far more services on a server - that is a definite benefit to the cost of running the business.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.