#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2012
    Posts
    1
    Rep Power
    0

    Cool Career tips for a first year CS student, future developer


    Hi guys. I am in my first year of studying CS at university. I just have a few questions, mainly related to career development, web development, and Python. I started programming about 6 months before I decided I started classes at university. In that time I honestly didn't learn much. I learned HTLM and CSS, and I got a little introduction to Python and some Javascript. My classes now are all going to either be in Java or C++. I want to keep learning Python on top of this, so I can start getting in to rapid web development. I was thinking about learning Ruby on Rails but since I had Python experience I decided I would go with Python/Django.

    Here is my situation:
    I am currently in a remote location in the midwest for school. It is NOT the place to be for technology, even though it has a reputable program (there are still better ones I could transfer to). Because of this, and a few other problems I have with my school, I am looking to move to California and submerge myself in the development community. This will not be done until the summer. I have some family there and I am going out there to network this winter (either LA area or most likely San. Fran). By the time the summer comes around, I will have over a year of experience programming in Python. Granted, that whole time I wasn't focusing specifically on Python, but also things in classes like (database management /Java and C++/Excel+Access/etc).

    Here is my question/goal:
    When I move out there, one of the things I am looking to take advantage of is the tech community. With my experience, what would be the best path (learning wise-and job searching wise) to better my chances for some kind of programming internship? Should I focus on learning Python well, and getting a solid foundation in that? Or should I try to learn some web development stuff (Django). I feel like Django is really tough for me to learn right now because I don't have a really solid grasp around Python, although by the summer I might. On the other hand, would getting my feet wet with Django, maybe building a simple web site or two help more than focusing on Python? And what about HTML/CSS/Javascript? Should I put some more time in to them or focus more on Python or Django or both?

    I know I just asked a lot of questions, and I am mainly just looking for some tips so I can get where I want to be, given my situation. So any help would be wonderful, thanks for the help in advance!
  2. #2
  3. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2012
    Posts
    1
    Rep Power
    0
    You could set a goal to have a simple portfolio showing what you can do. For example, you could plan to have one working website up on the net somewhere that looks nice or does something interesting. It doesn't have to be complicated; just illustrate that you know how to make a Django site. You could supplement that with a few other code snippets, could be stuff from class projects, or bugfix patches you submit to some open source project, or just an implementation of an algorithm or fun exercise. You just want to show that 1) you are interested enough in development to have done some, 2) you have some basic ability to work on a website.

    Then you'd want to work this into your resume or cover letter so potential employers see it.

    Re: whether to focus on Python or Django or HTML/CSS or what, I think I'd say: work on building stuff (such as a demo website to have in your portfolio) and learn what you need to learn to build it. The way I still approach new technologies after many years of development is: 1) read about the basics to get an overview then 2) try to do something and let that guide what else to learn.

    I suspect the bottom line is that to do much useful you'll need to know all of it (Python, Django, HTML/CSS, probably some JavaScript too) but you don't need to know everything about everything all at once. Start by knowing a little about all of it, then try to do stuff, and learn more.

    Internships may be one of the harder-to-get ways to get experience; two approaches that may also work are to freelance or to help out with some reasonably-sized open source project. Many projects have tasks (such as docs or bug triage) that are educational but don't require advanced coding skills. If you can't find paid freelance jobs, you could also look for things like nonprofit organizations or schools (or whatever you're involved with) that could use some free technical help, and offer to do stuff for them. And then of course you can list that experience on your resume.

    In addition to writing code to learn, don't forget to read it. The Internet is absolutely stuffed with sample source code. Try to find code by recognized experts (such as project leaders or known authors or whatever), and dig into it - come up with a bug to fix or some behavior change to try to implement, and figure out how to do that, and how the existing code works. Another good excuse to read code is to write docs for it, so if you can find some undocumented thing related to Django for example, go figure out how it works and try to write those docs.

    Or find technical questions people are asking on forums, etc., and go figure out the answer and help them out. You'll give them a fish but you'll teach yourself how to fish, so you win. ;-)
  4. #3
  5. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2012
    Posts
    3
    Rep Power
    0
    Programming is a great field to get into with lots of jobs. Like anything certain jobs are better in certain areas, but in California there are lots of opportunities you can take advantage of. There are lots of resources for getting internships, I will leave all that for other people.. but as far as how to become more deeply invested in programming, the #1 way is always to do more programming. If you like python and django then go make something. Do you have any interests other than programming? if so the best thing to do is to combine your hobbies. Find ways to integrate programming into them.

    Using myself as an example.. back when I was a kid I used to do a lot of online gaming, so my first treks into programming were FPS clan websites and MMORPG guild websites.

    As for the technology you use. Use whatever you are comfortable with. If you aren't quite ready to delve into Django then just build some stuff in Python. Once you are done with your freshman classes you are going to probably spend a great deal of time working on projects for class and not as many personal projects. Once you get past that phase of school you'll find Django easy. Trust me.

IMN logo majestic logo threadwatch logo seochat tools logo