FAQ
- A group of students from the MS EE class of 2025 wanted to create a community led initiate to revive embedded systems & software community at the University of Pennsylvania.
- No, you won’t become an expert or a master in any of these topics just by reading the guides and following along.
printf("TL;DR: git gud"); // :)
-
None of us were and many still feel that way. We all have to start somewhere so knowing nothing is perfectly fine.
-
That said, if you are serious about something, you have to take the time to study and practice it with the intent to get good. It won’t happen immediately but little by little you’ll feel more comfortable with what you know and don’t know.
- Of course! There are a lot of free resources that we haven't accounted for yet. If you come across something worth adding to the list, please reach out to a member of the UPenn Embedded group or make a pull request with your recommendations.
-
Consistency is key. Seriously, trying to pick up a language or skill that you were good at but lost because you stopped using it sucks. The same concept applies to learning stuff. Try to keep progressing at a consistent rate and schedule. That said, don’t neglect other responsibilities like school (because ERAU is too expensive to be failing class). If you’re just starting out, just focus on doing a little bit everyday.
-
Take good notes! For me, I like to take notes using pen and paper. While this approach usually takes 2 to 3 times longer, I find that the effort invested helps me retain the information better and or longer. Also having good notes makes it very easy to go back to them for reference at any point in case you forget something. Find a system that works for you but I heavily recommend pen and paper.
-
The topic must be interesting to you. If you really want to do this, pick something that you are either really curious or really passionate about. The process of learning and staying focused is much easier when it’s something you truly care about.
-
Don’t try to master everything. It’s always great to try new things but you need to have a skill or a subset of skills that you are very proficient in. For me that is in embedded systems and a little bit of digital electronics. However, I’m also familiar with web development and a bit of Python whenever I need them. I realize these words may not mean much from a seemingly jack of all trades but trust me, if you find an area you are passionate about, it would be a wise move to invest more time in that single area than equally across many.
-
Accepting failures and hardships - For better or worse, the reason I am where I am now is because of failures, mistakes, and hardships I have faced up to this point. None of us like to lose but sometimes it happens and that is the reality of the situation. It’s taken me a while to truly learn this lesson but don’t get discouraged if you miss the opportunity. Learn from your mistakes, get better, and try again.
-
Get comfortable being uncomfortable - It’s very easy to get impatient in just about anything. There are plenty of times I feel anxious because it feels like I’m not moving fast enough or I’m not hitting the absolute limit yet. We’re dealing with mostly uncharted territory so everything might not make sense yet. Just remind yourself that you’re still in the process and you will get there!