Electrical Engineering student – When do I learn how to make stuff people want?
5 points| eddieschod | 11 years ago | reply
Also not sure if my year round school/co-op program leads me to not have much free time to learn programming.
Can anyone lend me some sage-like advice to help me move forward on my path to learn how to make stuff people want?
[+] [-] pdx|11 years ago|reply
Take a look at this site. https://www.chinavasion.com/china/wholesale/Electronic_Gadge... Those products are pretty cool, and there are thousands of them that you've never heard of. Having a cool product is a necessary but not sufficient condition of having a product that people want. You also have to have a marketing story that excites people. A cool product without a marketing story that excites people, will be lost in a vast sea of other products.
As people are exposed to more and more products, they're harder and harder to impress. In 2001, just having a blue LED on your product was magical, since blue LEDs were rare at that time. In 2015, you need pulsing RGBW just to be in the game. In 2006, a bluetooth speaker was a big deal. Now, it better be submersible, very loud, and run on rechargeable batteries that last over 10 hours.
You'll spend your life designing products that are obsolete ewaste two years after you release them. How many years of my life I spent designing mp3 players and ipod speakers, all of which are rubbish now.
I guess this went a bit darker than I intended. It is fun to see your stuff in stores and hear people's delight when they are interacting with something you have created. Perhaps it doesn't matter that what delights them today will bore them tomorrow. You delighted them today.
So, to answer your question, build things that delight people. Make it magical. Create an experience for the user that is not a common experience that other products can give them. Then they will want what you built.
[+] [-] yllow|11 years ago|reply
Make stuff that people need and want to have. It's apparently tough , unless you are not aiming making tons of money.
[+] [-] sobraj|11 years ago|reply
[+] [-] brudgers|11 years ago|reply
Although you are as old as you have ever been, you're probably not nearly as old as you're going to get. Since you're the type of person who knows they don't know as much as they will know, use that knowledge to plan to know the things you want to know.
There's a reason Norvig recommends ten years to learn programming...he has steely eyed high standards for what it means to learn something.
[+] [-] auxym|11 years ago|reply
http://paulgraham.com/startupideas.html
[+] [-] nicholas73|11 years ago|reply
[+] [-] ownedthx|11 years ago|reply
[+] [-] chrisBob|11 years ago|reply
If the question is really about how, then I would say to just dive in. Think of your own fun project, and build the hardware/software to work with it. I think there is a lot more work involved in a good hobby project than there is even in most senior design projects in undergrad.
I recommend thinking full one full project to invest a little time/money into. Plan everything from the enclosure to the hardware and software. For example: make a dorm room security system that displays the time since the last person was in your room. Now you will know if someone snuck in while you were in class. Start with a box[1], layout[2] and order[3] a pcb. Interface with some hardware[4], and then write the software to tie it all together. If you want a little help with the soldering then you can also have seeed solder on the microcontroller for you for just a few dollars more.
Sparkfun also has some great resources if you need tips on how to layout PCBs.
Don't be surprised if you actually need a few revisions on the board before you get it working, especially on your first one. Its easy to forget something like the programming port...
Starting from scratch, doing a full buildup, and having a professional looking finished product will give you a lot of confidence.
If your question was what to make then you are on your own. I have no clue.
[1] http://serpac.com/wm031x.aspx
[2] http://www.cadsoftusa.com/download-eagle/
[3] http://dirtypcbs.com or http://www.seeedstudio.com/service/index.php?r=pcb
[4] https://www.sparkfun.com/products/13285 https://www.sparkfun.com/products/9261 https://www.sparkfun.com/products/9393 https://www.sparkfun.com/products/11993 and https://www.sparkfun.com/products/9276
[+] [-] anigbrowl|11 years ago|reply
Also, while it's good to be capable and execution is important, don't feel that you need to be good at everything, because that often leads to biting off more than you can chew, followed by disillusion and disappointment. I've had huge struggles with this and so does any curious person - because you can easily get interested in many things and because you enjoy learning and problem-solving, you could become very very good at many different things, and soon you end up feeling that you have to be good at everything, even though this is not actually practical. It's an extra risk for technically inclined people, because dealing with technical problems is often easier than dealing with human problems, and it was your DIY tendencies that led towards studying engineering in the first place, no? So when you have to deal with people who are not wired the same way, it can get frustrating, and you have to fight against the desire to take over everything and Do It Better, (except that you can't do everything better because there's too much of it).
So two valuable skills to develop are to a) cultivate insight into why you think you could do any given thing better than you see it being done now, and b) develop your ability to communicate those insights to other people who are happy or even anxious to focus on one particular task rather than the whole ball of wax - and to radically adjust your insights and ideas in (a) because they will often turn out to be wrong or shallow.
Back at the quotidian but-what-do-i-do-today level, learn to cultivate your own taste and develop simple things that amuse you rather than looking for the thing that will allow you to make a spectacular debut. You probably don't have enough experience yet to imagine those really big things and project your imagination into all the levels of detail required. So set aside time to make simple things well. games are good for this - look at Flappy Bird, which is only a few steps above 'hello world' in game terms - it's just a simple loop featuring input, update, and collision detection, the absolute bare minimum for a real-time game. Angry Birds is just a physics library one simple game mechanism, and some very basic ideas of character animation. And so on.
Since you're an electrical engineering student, you probably know plenty about topics form hysteresis to antenna design to power supplies to lasers and so on (my wife's an EE so I know it's a broad umbrella of electives after the core engineering stuff). Think of something that you found cool but challenging, and think how could you make a game out of it that would expose the basic concept to a 6-year old, like where it basically comes down to some non-linear equation with only two variables or something. Then find a way to get that working on your phone and call it a game. Give it a silly name and add bright colors and bold patterns. Consult actual 6-year olds. One great thing about them is that they haven't fully developed their social conscience yet so if your idea is overly complex they will tell you that it is stupid. Making toys is a good way to learn about making tools, and people want both.