• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Careers, Learning, Programming...

 
Ranch Hand
Posts: 143
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I doubt this is the best forum for this. But i need some good advice. I am currently in 2nd year computer science. We have covered programming fundamentals and interactive software development. To the extent i can pick a book up on how to program and know most of the things being taught in it. But where do i go from here?... What sort of stuff should i be learning now if i want a professional career as a programmer? Not just in java... I just dont know where to start. I want to learn more and more...

Anyone any advice?

Thanks
 
author
Posts: 23951
142
jQuery Eclipse IDE Firefox Browser VI Editor C++ Chrome Java Linux Windows
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
This is just opinion... so take with a grain of salt.

I wouldn't worry about the language too much. Who know what the world will be using in 10 or 20 years? And even if Java is still around, who knows how different it will be?

I would take the time to learn subjects like databases, artificial intelligence, graphics, computer architecture, compiler design, etc. And don't forget to take all the theoretical stuff, that doesn't seem to have a purpose.

The goal is to learn techniques rather than languages. But more importantly, figure out what you want or don't want to do. Wouldn't it better to find out now if you find manipulating pixels boring as heck, than finding out in your job as a web designer?

And have fun. Learning shouldn't be too much work.

Henry
 
Stephen Foy
Ranch Hand
Posts: 143
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Henry Thanks for the reply.

I have completed modules on databases this semester and a module of operating systems communications and protocols and computer technology(architecture). In which we did alot of linux programming. Compiler design sounds interesting. Can you recommend any good books or resources on the subject?

This semester we will be studying the following which i cant wait to tackle.

Objects and Algorithms
Object Orientated Systems Analysis and Design
Systems Programming
 
Ranch Hand
Posts: 904
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I agree with Henry, especially on the "theoretical stuff" part. When you
learn about computer languages and semantics you will have an easier time
learning new languages because you realize that it is only the syntax
that changes (slightyly).

Follow your courses and invest time and energy in those subjects that
interests you.

With respect to Compiler design you could take a look at one of Appels
three books (C, Java, ML) on Compiler design:

http://www.cs.princeton.edu/~appel/modern/

/Svend Rost
 
Rancher
Posts: 43081
77
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Compilers: Principles, Techniques, Tools is a good book. The 1st edition should be sufficient as an introduction (it reaches quite deep), although there is a much more expensive 2nd ed.

Make sure you also study different programming paradigms, like functional (Lisp or Scheme) and logical (Prolog). You don't need to become a proficient programmer with them, just knowing how things could be handled differently is an eye-opener in itself.
 
My name is Inigo Montoya, you killed my father, prepare to read a tiny ad:
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic