This is a bit of a long post, just to point out. I currently am in this field so a few pointers and responses to your questions below, and I have been working with programming and application development for around 10 years now.
Most of my response is geared towards going on your own, but if a job seems more apt for you after analysing the suggestions and advice you get then there is a different set of things you can do to stand out while still continuing university.
(05-19-2013 02:07 PM)Plutoman Wrote: Prefix: I'm looking for some advice here. Feel free to offer any and all thoughts. If someone's willing and interested to offer further help besides posts, I'd love to hear some PM's.
Background: 21 years old, taking classes in comp sci at a state university. 2 years minimum left for a degree.
As I finished out my semester here, there's a few conclusions I've realized. I'm learning very little in my classes. There's information that is absorbed, but very little is actually learning. I do coding in LISP - my teacher was awful, unhelpful. Projects are relatively pointless, it's intended to be a class on paradigms and I learned how to write code to solve a few puzzles and to link in an HTML page.
I take an assembly language/computer systems class. Never touched assembly language, did basic C code for embedded systems. Mainly consisted of following the guidelines for the project just step by step. Code was easy, looking up a few functions in the DriverLib manuals, etc. Weird issues cropped up, of course, but manageable.
I've finished the semester, I've not had a normal one, I got rigged up at the beginning because I was doing a transfer of schools and it was nearly 3 weeks before I was actually enrolled in classes. Got shafted on homework assignments for that period, and in the attempt to catch up, overall dropped me a good letter grade for each class.
At this point, I have definitive considerations towards walking away. I learn much faster on my own. I've dealt with large projects before - I worked with Skyrim modding, and wrote large sections of a java library for it along with a good friend of mine, along with my own programs to utilize the library with hundreds of thousands of users. I've got the brains, I've got friends that are willing to work with me, I know venture capitalists and have close friends with relatively significant amounts of money. I have a drive to achieve what I want - which at the moment, is not correlating to my classes. I have no drive there, and I don't feel like I'm getting anywhere with it. I have good social skills, in general.
Chances are that whatever you did, are doing or will do in university as part of computer science will not be very useful in practical terms. The only thing it will help toward is you gaining a good understanding of the principles, logic and foundation but with little practical usage at the end. This is important so don't get me wrong, but it will not ensure that you benefit from it by itself.
Case in point being myself. I didn't get a computer science degree yet have been working in the field for about 10 years now, and programming for much longer. All of my programming is self taught, based on the foundation stuff from high school. and one or two basic courses in university as electives.
(05-19-2013 02:07 PM)Plutoman Wrote: So here's my questions;
What would the impacts be of finishing a degree, versus not finishing a degree? Consider this from the standpoint of me starting up my own company either way. Would it be better to finish the degree and pay the money, or can I benefit more by passing on those two years, and starting now?
This entirely depends on your long term plan. If you are absolutely sure that in the long run you want to go on your own without a shadow of doubt (this is very important, I have explained further later in the post), then the two further years will not add much to you. But if you are just exploring going on your own then I suggest that you finish the two years since it gives you a contingency in terms of ease of getting a job.
You could get a job without finishing the degree, but it will be relatively harder.
(05-19-2013 02:07 PM)Plutoman Wrote: In creating a product, a piece of software, how do I approach companies with this? Say I have an idea that could be used - how do I go about broaching this idea? Do I design a functional version first, then contact them? How does this process work?
Essentially yes. There are millions of people trying the same thing every minute nowadays, so you need much more than just an idea to get anywhere in the current scenario.
You do not need to have a fully functional version of the product at the get go, but you will definitely need at least a prototype version which would pique the interest of others, be it a company, investor, funding angel or just partners/employees.
The process is quite straightforward, its all in the execution - Idea -> Prototype -> Test/Garner Interest -> Build -> Deploy
The idea step is very crucial, you need to be very clear in so far as to what your product is, why there is a need for it, what will it accomplish that something that already exists doesn't or if none exist why it is required.
Once you have nailed this down, you need to create a minimalistic plan for starters on how you are going to go about with the execution (a business plan, if you will, although I am not too fond of the term itself). You need to counter for time frames, schedules, finances, revenue and exit strategy.
Then comes the brunt of the work, build a prototype version of the product, get people to use it, assess their interest and feedback and then go back to working. By this stage you should be able to get a better idea of whether it will succeed or not. Be open to the possibility of it failing, and if touch wood it does, you have to either go back to the drawing board and reform your idea or move on to another idea altogether sometimes.
(05-19-2013 02:07 PM)Plutoman Wrote: How effective are advertising methods of revenue? In the context of, say, an application for smartphones.
Effective for what? And more importantly it all depends on your application, you can get away or do with ads in a game application whereas you cannot or it doesn't help if your application is geared towards something else.
So where do the ads fit in with your idea? Is it essential or is it something you are looking at as a possible source of revenue? Will it help or hinder the users? These are important questions you need to have clear answers to.
(05-19-2013 02:07 PM)Plutoman Wrote: What are methods to market and advertise a product?
Again depends on your product, and your ability to pay for the PR/Marketing. If you have the coin, you can go the extent of getting a bill board, or if money is an issue you list your product/application in marketplaces, blogs, etc to the lowest form of it being word of mouth. That covers the entire spectrum and everything in between so it eventually boils down to what you can afford and how effective it will be in terms of ROI.
(05-19-2013 02:07 PM)Plutoman Wrote: How feasible is the thought of branching out at 21? Am I going to run into issues with people presuming I should be getting a degree, or presuming that I need to age before dealing with business?
Age is not necessarily a huge factor in this industry or field, but you have to have the conviction and self-belief to make others believe in you, only then will they believe in your product.
No one is really going to ask you if you have a degree if your product is great and you execute what you set out to do. But there is a catch, if it doesn't work out as planned, be aware that it is the first thing that they will point out as a drawback, and lack of experience, so you have to make sure that you don't give them that chance.
(05-19-2013 02:07 PM)Plutoman Wrote: I had a few more questions similar to the first two in specificity, but they are escaping me at the moment. I'll be approaching a few people I know with these thoughts around here, but it seems like a good community for honest advice so I decided to start here as I work this evening and tomorrow and will not be able to talk to someone in person.
Most especially, if anyone with experience would be interested in a skype call/discussion, that would be fantastic.
If you have any further questions or specific things, hit me up and I will chip in as much as possible.
A few general observations just to reiterate them and make sure you are aware of them:
- There are literally millions of people who think that the software/mobile/web application industry is a quick fire way to making millions and billions. This is extremely far from the truth. You need to be very realistic, if you don't make it it will have taken the brunt out of you and it can be very frustrating.
- For every product/application that gets sold for millions, there are literally 1000's that fail, and even more that never even see the day light.
- Be prepared to spend hours and hours together sitting in front of the computer, and a gruelling lifestyle when you are starting. If you have good capital this might be a bit easier as you can hire more people rather just do it as a single person or a couple of guys. But in any case, hiring too many initially is not a very good idea. A 3 or 4 person team is just about right at best, and for the initial prototype and planning stages 1 or 2 people on the same wavelength and similar ideology.
- You need to have a solid understanding of how the product will generate income or revenue and furthermore a proper exit strategy. The exit strategy more often than not dictates the direction and choices you make in terms of the product and how it grows.
- Be prepared to fail and be prepared to call it quits. If your first idea doesn't seem like it will succeed, then after giving it a shot be ready to completely drop it and move on to the next one. This is very important. If you keep pushing on a failing idea, not only will it waste your time, but it will also lower the confidence level among your supporters.