views:

61

answers:

3

i just want to ask about my plan on what i want to study and work on in the future and you can give me feedback on whether the scope is a healthy one

i am 21, going to uni next year. currently a developer leaning towards more of a PHP/Zend Framework type web development & some web design. to get an idea on what i do/like you can look at my tumblr

these are my current planned focus:

web development (i am relatively familiar with a large part of this)

  • PHP (Zend Framework 1.10 (currently ... 2.0 is coming out) + Doctrine 2 ORM)
  • HTML5 (learn things like offline apps, web database, etc)
  • CSS3

windows development

  • C#
  • WPF
  • EF
  • MVVM

i wonder if this is too little? or too much? the windows development part is the part i am picking up right now.

A: 

It depends on:

1) What is your goal (except the fun of learning)?

2) What and where you are going to study in the uni next year (Computer Science in a top uni for example won't leave you much time for extra curriculum learning, unless you are some kind of a geneious...).

Hagai Cibulski
goal i think will be to have a successful career in a good company and be able to afford some luxuries, nice house etc. be able to develop apps to solve real life problems or enhance workflows. i am studing a ... i cant say top uni since there are only 3 main uni in my country, so ... but its top in those 3 i guess. computer science. they call it computing
jiewmeng
+1  A: 

You are missing a rather important part here. Do you want to be more of a specialist, where you know just a few technologies but at great depth, or do you want to be more of a generalist, where you know a lot technologies at little depth? If you are going for a specialist, then you may be fine though I would seriously consider adding JavaScript to your list as if you are focusing on web front-ends then JavaScript will likely be commonly used on various interactive forms and the like. I'd also consider possibly dabbling into ASP.Net to see web development using a different stack. Lastly, don't forget that your mileage may vary and technologies can change all the time.

If you want to be a generalist, then adding databases and web services may be worth considering to round out a couple of minor points.


By databases, I mean basics of relational databases in terms of tables, indexes, stored procedures, and triggers while also knowing of other ways that data can be stored in other formats. Databases are used in many systems and I would think most generalists would know at least how to get data out of a database in a couple of ways if not more.

By web services, I mean basics of how do you expose a web service to have a WSDL, what kinds of data do you put into a web service,e.g. SOAP or POX. In some ways this also means knowing a little about Apache or IIS which could also be rather useful to know the basics of how to configure a web server and understand various choices one has in configuring the server software.

If you are going for a generalist, then I'd likely also want to add in some networking and systems administration which you may already have but I'd likely add it to the list. By networking I mean understanding how TCP works as well as some wireless protocols, just to get to different parts of things, understanding firewall settings would also be something here. System administration may be a bit harder to set up, but just tinkering around with accounts and keeping track of who has access to what even if it is just dummy accounts.

JB King
oh yes for i know some js and jQuery, forgot to add that. i am learning C# now because i find the .NET framework a good investment where i can move to MVC or even cloud development easily. i am thinking, for now (b4 uni) i want to be a generalist to have a good foundation. so i am thinking python so i can even explore google app engine
jiewmeng
i know SQL so applicable to most database systems. or by databases u mean store procedures, optimization, maintenance etc? by web services u mean? WSDL/SOAP that kind of thing? i learnt them in poly, but didnt continue long ater that
jiewmeng
+1  A: 

IMO, obviously:

These are useful things to know in the market right now, but they're specific technologies, not things that should be courses of study at a university. You can learn them well enough on your own from a book in a short period of time, and perhaps incorporate them into your studies at school.

You want the material you get from a university education to provide a foundation that will remain relevant despite the fact that the new cool thing will be an obsolete technology by next Thursday. If you want to do software development, do a CS curriculum: discrete math, data structures, algorithms, numerical methods, computer architecture, databases, operating systems, formal languages/automata, etc. If you also have interest in doing web design, take some courses in a design-related curriculum.

Otherwise, why bother with university at all?

ngroot