What steps can I take right now to enhance my future computer career?

<p>Hello,</p>

<p>I'm currently a college student and I'm majoring in information science. My goal is to eventually design computer apps for companies such as google, apple, microsoft, etc. However, the only experience that I have right now on my resume is in the fields of customer service, sales, and sales management. I have absolutely no computer experience what-so-ever. So types of jobs could I be taking right now to make sure that I can complete my future goals when I graduate? Should I maybe get a help desk job at some computer company or maybe get my A+ certification? What should I do?</p>

<p>Why are you asking about jobs? Why aren’t you asking about classes?</p>

<p>Working a help desk or doing A+ kind of work has nothing to do with software development so I don’t see it providing anything more than a pay check. If anything it might make potential employers not take you seriously.</p>

<p>You should be taking math and computer science classes if you want to make software.</p>

<p>One thing you can do is to create your own open source project or working on existing one. The project does not have to be big but it should be useful. It can become your resume and work experience. You will need to do some research on the subject.</p>

<p>This one is by facebook</p>

<p><a href=“https://github.com/facebook/hiphop-php[/url]”>https://github.com/facebook/hiphop-php&lt;/a&gt;&lt;/p&gt;

<p>You can contribute in various ways.
[Sinatra:</a> Contribute](<a href=“http://www.sinatrarb.com/contributing.html]Sinatra:”>Sinatra: Contribute)</p>

<p><a href=“https://github.com/sinatra/sinatra/[/url]”>https://github.com/sinatra/sinatra/&lt;/a&gt;&lt;/p&gt;

<p>You can see projects developed in other language inspired by Sinatra. The ideas don’t have to be original.</p>

<p>This is a small one for Apple Passbook. Apple publish their implementation in Ruby in WWDC. There are a few PHP implementations developed based on the Ruby code. I show this example because it is small and not difficult but it is very useful for developer who don’t use Ruby. This is also not an original idea but you have to know what is going on in the industry.</p>

<p><a href=“https://github.com/tschoffelen/PHP-Passkit[/url]”>https://github.com/tschoffelen/PHP-Passkit&lt;/a&gt;&lt;/p&gt;

<p>Yes, classwork is key too. Can you paste in the required course sequence for your Info Science major? Then folks might be able to help you tailor your electives.</p>

<p>As soon as you meet the prereqs, take a class at your school that involves forming a team of people and making a software project over the course of a semester. Your programming maturity will grow by leaps and bounds.</p>

<p>Ok so I’ve noticed that some of you have now suggested that I need to be taking computer science and not information science if I want to develop apps for large companies. Now the interesting thing about this is that I thought this as well. However recently I went and saw an adviser for the computing department of my college and he told me that I actually should be taking information science as a major if I wanted to develop apps. He told me that information science has more hardcore programming classes in it that actually pertain to the real application of software development and computer science was more theoretical. </p>

<p>Here are the tracks that say all of the courses that you have to take for each major (both computer science and information systems). The page that I put up here takes you to the unf website, just click the links that say “Information Systems Track” and “Computer Science Track” and then view the pdf in adobe. </p>

<p>[UNF</a> Search](<a href=“UNF Search”>UNF Search)</p>

<p>[UNF</a> Search](<a href=“UNF Search”>UNF Search)</p>

<p>So please do me a favor and tell me the truth people: tell me if I am in the correct program to achieve my goals. I don’t really trust the adviser that much</p>

<p>What is your definition of apps?</p>

<p>It will take more than a degree to get you in one of the companies you listed. You should put Amazon on your list too. A few things you can do without cost. You can get Android SDK and just go thru the tutorial to learn about the process. AWS offers a free tier. Google App Engine and Google API are free. Pick an app you know, break the app apart and investigate what services from AWS and GAE are needed to develop the app. You need to do the homework yourself to form your own opinion. What you gain from doing the research yourself will be more useful than what we tell you. That will be what Google, Apple, Microsoft expecting you to do too.</p>

<p>My definition of apps is any type of program that can be created to be uploaded on your iphone or whatever.</p>

<p>It doesn’t matter which technical discipline you choose as long as it includes software development classes. You should be an expert at coding with multiple languages. With information science I’d expect to see some big data experience like hadoop on your resume. You should also try to get an internship.</p>

<p>Is your school part of iOS developer program? If yes, you may be able to get in for free if you take a class. If not, you can spend $99 to get in or you can take the Android route. Most apps don’t just work by itself. The app usually interacts with the cloud and that is where AWS and GAE come in. You can develop using the emulator without a phone initially. It will be a good exercise.</p>

<p>I think you should do CS instead. It is true that it is more theoretical and has some math and EE classes that have nothing to do with making apps. I took a class about making mobile apps, while the class fun, it was a waste of time. Those theories in CS are very useful to expand your reasoning and they will make you a better abstract thinker which results in making you a better programmer. The computer organization class is useful to understand the machine you are programming and for embedded software. There is a lot of other useful CS classes such as Operating Systems, Computer Networks, Artificial intelligence, scientific computing, image processing and a few others</p>

<p>You sound like you want to be technician so I don’t know why you just don’t get an A+ c</p>

<p>I looked at the tracks and while the IS one is respectable and there is a place for that sort of degree, it does not match your stated goals as well as the CS one. If you wanted to work in an enterprise computing environment or go into management, become a CIO, maintain mainframes (that’s fun to say…not as much fun to <em>do</em> though), do database stuff, then the IS track looks like the way to go.</p>

<p>But if your goal is to make software that ordinary consumers use then the CS track is the one for you. Put it this way, with some extra on-the-job training a CS major could do anything the IS major could do, but employers wouldn’t have time to take an IS major and get him grounded in graph theory or computer systems organization. You don’t want to lose a job because you don’t know what depth-first-search is or how stacks work in assembly language. What I’m saying is that the IS degree could get you a great job, just probably not the one you want and it would put a ceiling on how far you could go, whereas the CS degree provides the foundations to go farther, if you want, as it requires more math and science and has more theoretical fundamentals, and more software/hardware fundamentals.</p>

<p>May I ask why you seem to be talking only about software than can be run on a phone? Does desktop/laptop computing not interest you? What about game consoles? If you want to be a game programmer, DEFINITELY don’t do the IS track.</p>

<p>The CS track is intended for those who want to design and develop computers and their software. The IS track is intended for those who want to manage computers and their software in a business environment (it has more of a business emphasis and less of a technical emphasis).</p>

<p>Okay so I saw some interesting comments on here and I think so far that you have all given pretty good advice. However folks, let me tell you some important details about myself right now that I have neglected to mention…</p>

<p>I’m pretty much grasping at straws to figure out what I want to do with my life at the moment. I’m pretty sure that I want to do something that involves the practice of developing new technology so I’ve seriously considered majoring in EE or Comp Sci. Actually to tell the truth I was majoring in comp sci this semester, but I just recently changed it to Info systems after talking with an adviser who told me that I actually should major in IS if making new apps is what I wanted to do. </p>

<p>Another thing that I should mention is that I AM absolutely DESTITUTE at the moment. I mean I am so poor that it’s ridiculous! I have 3 really bad health problems that I suffer with at the moment and can do nothing about it because I can’t afford the health care. One of the health problems is that I have PTSD right now and it literally just BUTCHERS my mental health and no one can help me with it because I can’t afford to get it treated. I need to start making money as fast as humanly possible but I can’t seem to find a decent paying job right now to save my life! It seems like I need a degree to get any job that is even halfway decent right now. </p>

<p>I also don’t have any financial backing or safety net at the moment. I live with my father who is a felon and can’t seem to get a job no matter what he does and my brother who just has a lousy retail job at the moment. I’m often having to pay his bills as well. </p>

<p>In addition, I think that I could hack the math that comes with an engineering discipline, but it just takes so much time out of my schedule to do so that it only allows me to take two classes per semester and I’m having to continually take out loans in order to do this. With an information systems major, I could at least go back to taking full-time classes and getting more pell grant money to survive on as well. Plus, if I wanted to later get a master’s in engineering or whatnot, I could always just take many of the math classes at my old community college and they would be a lot easier. It seems like the math classes that I am taking at the University are much more difficult then they are at a community college. Plus, I could hire a tutor to help me with the math on the weekends with my money that I would be making after I got my degree, which I can’t do right now. After all, the math tutoring center at my current college is only open Monday through Thursday. </p>

<p>So yeah, in the future I think that I may pursue a master’s in EE or CS just not right now because it takes too much time and I need to make money as fast as possible? Can you guys think of a more efficient way that I could complete my goals?</p>

<p>Wow. If I were in your shoes I’d pray. May seem like hokey advice but I wouldn’t be saying it if I hadn’t seen answered prayers in my own life.</p>

<p>In the immediate phase, you may have to do the most economical thing and stay in IS so you can graduate faster and get a good job. Taking two classes a semester will keep you from graduating, you’ll probably burn out first from the stress of making slow progress.</p>

<p>Is your PTSD combat related? If so, I believe there are veterans’ charities that can help with that.</p>

<p>Oh, boy…</p>

<p>if you want to make apps, mobile or on the web, you are talking about software engineering which is mostly what a Computer Science degree means. But you can get a CS degree and not know jack about programming and code, so you best learn either iOS, a web development language & framework like Python/Django or Ruby/Ruby on Rails, or something low level like C or else you’ll find that nobody will want to find an engineer without experience. </p>

<p>The people who make apps for Google, Microsoft, Apple are employed by Google, Microsoft, and Apple and the people who work there are some of the smartest software engineers in the world. If you want a high desk job you’ll have to earn it and there isn’t a certification in the world that will prepare you for it. </p>

<p>What will is 10,000 hours sitting at your computer writing tens of thousands of lines of code. There are many well paid jobs for OK programmers who hate their job but if you want to work for a giant tech company then you better love technology and what goes under the hood to make it all work</p>

<p>Jnelsonmarka, I’m sorry to hear that. You are better off with IS. Honestly, I don’t any good advice for you. Something that might work is taking a semester off and doing some technical training by getting the A+ or any training that could help you get a job good enough for your expenses. After you get financially stable, you can finish your IS degree. I have no idea if the A+ cert is that helpful to get a job but I wish you the best of luck.</p>

<p>But seriously people if you go back to post #6 on this thread where I posted the two links and click the first one, it will then take you to a unf search page. If you then scroll down slightly and click on the link that says, “INFORMATION SYSTEMS/SCIENCE TRACK Spring 2013 Schedule” it will then take you to a pdf document that outlines the two main tracks of the the computer degree. There are two different degrees offered depending on what path you choose: information systems and information science. Now from what I see on that page, it looks like information science would be very similar to computer science and has classes on hardware/software config, comp structures, graph theory, etc. Then, it looks like the information systems degree is more business oriented. Judging by that page, would the information science track be more suited for me then the information systems track and could I do what I wanted to do with that degree? Bare in mind I definitely don’t have to start out with a google job but could I at least get any job at any company developing apps that makes decent money? </p>

<p>Also @Tom Servo: My PTSD isn’t combat related. I got PTSD from living in a house with a parent that was a drug dealer and our lives were constantly threatened, and it screwed me up mentally.</p>

<p>I prefer this link:</p>

<p>[UNF</a> - CCEC: School of Computing - Programs of Study](<a href=“http://www.unf.edu/ccec/computing/Programs_of_Study.aspx]UNF”>http://www.unf.edu/ccec/computing/Programs_of_Study.aspx)</p>

<p>It lists four undergraduate majors, computer science, information systems, information science, and information technology.</p>

<p>Looking at the majors you can’t say one is “better” than the others, you can only say what each one is best for. If you want a job in the corporate world managing computers, writing .NET/Visual Basic apps, working in high-level languages and not really getting yours hands dirty algorithm or math-wise, then either of the IS degrees are for you. They are also easier degrees to get. They are also easier degrees to outsource, or so I’m told. Neither of those degrees really prepares a person to make software for end-users, you would be much more qualified to write in-house software that businesses need, like database management and accounting, etc. If you wanted to get one of these degrees but expand your horizons, you’d need to add more fundamental CS courses.</p>

<p>If you want a more “under-the-hood” understanding of not just computer hardware but also software, algorithms, languages, and you want to be able to do things like computer graphics, then you want the CS degree, with all of the math and physics prereqs and more core CS courses. I don’t know how it is in the iOS, Android world:::googling:::looks like Java for Android and Objective-C for iOS apps. Anyway you want a solid foundation in object-oriented programming, algorithms, design patterns, graph theory, discrete math, data structures, etc. </p>

<p>Some of this more theoretical/mathy stuff you may not actually “use” like you would “use” a wrench or a hammer, but it will be in the back of your mind, as a foundation to a lot of the methods and approaches that you would actually use. Somebody who doesn’t have that foundation is kind of like a guy who knows how to change oil but doesn’t know why cars need it or what it does and is completely lost if some part of the oil-changing process malfunctions. Somebody who has that foundation is like a guy who knows what cars need oil for, what the inside of the engine looks like, alternatives to standard oil, different types of engines, how heat disappates (sp?), how chemical breakdown happens, etc. Which guy do you think would go farther as a auto mechanic or has a wider range of car-related jobs he can perform?</p>

<p>tl;dr</p>

<p>Bypass your advisor who doesn’t seem to know stuff, and ask a CS professor or lecturer at your school, somebody who teaches one of the actual CS courses.</p>

<p>Also: college should be about <em>you</em>. This should be a four-year period where you are focusing all of your energy on getting your degree and getting a job. If, after that, you want to support your family more or pay peoples’ bills, etc., then feel free to do so. But going to college always involves making some kind of sacrifice. For those four or five years you will sacrifice free time, time and energy you could spend socializing more, you will sacrifice the earnings you could have made at a better job, you may sacrifice your standard of living by having to share one room of an apartment with five total strangers, you may have to eat worse food, you may exercise less, you may neglect your family and friends more than you’d like to, but it’s all part of the process. Once you graduate and are making 40, 50 thousand a year with a CS type degree you’ll have more breathing room financially but if there is any part of your living arrangements or something that is negatively affecting your ability to study, to finish homework, to do well in tests, to take a full-time course load, etc., THEN IT HAS TO GO.</p>

<p>I know this is hard. My own brother was kicked out by his wife and had to live on my couch at the same time I was taking the hardest course load I’ve ever had. It affected my studying ability. I wanted to drop out. I had to drop to two classes by the next semester. Eventually I told him that he <em>must</em> leave and it was not easy to say that to him. Fortunately my parents five states away could give him a place to stay.</p>

<p>You may have to make hard decisions to finish your degree in four-five years. Make more friends at school because you need people to lean on. Join a club, church group, I don’t know.</p>

<p>@Tom Servo </p>

<p>Thanks a lot for taking the time to type that EXTREMELY informal message. To be honest Tom, I’m really between a rock and a hard place right now. I’m trying my hardest to try to stay focused on school, but at the same time I’m really questioning a lot of things right now. </p>

<p>For instance, one thing about myself is that I am very good at technical/mechanical things, I’m very good understanding systems, and I’m very good with abstract thinking. It is for this reason that I really think that I would make a good engineer of some sort, whether it be electrical, mechanical, or software engineering (comp sci). However, I’m really not sure which one to pursue, or even if I can find a way to pass the classes. After all, I have weak math skills. Question: How often do engineers really use those math skills? I mean, I’ve heard that on the job, you mostly just use basic algebra skills? Is this true? After all, I can’t really see companies having engineers doing page long math equations all day, because then they’d have to work the engineers longer and wind up having to pay them more. Plus, we both know engineers cost a lot to employ. </p>

<p>Personally, if I could get any degree right now, I would just say “screw it” and just get a degree in electrical engineering. However financial aid prevents me from doing so because my A.A. transfer major was in psychology and my school’s engineering program is a limited access program, and requires you to already have an A.A. in engineering to get into the UNF program because it’s so overcrowded. They only way they will let me in is if I go back to my old community college (Florida State College at Jacksonville) and get my A.A. in engineering. However, financial aid won’t pay for me to get another A.A. degree so that option is out unless I could somehow find a way to pay for the EE degree out of pocket. </p>

<p>Right now it looks like I should just find some way to pursue the comp sci degree, and work a part time job while doing so. Then, maybe I should just work and later get an EE masters? I just don’t know how I’m gonna stand being poor that long? What do you think?</p>