smckk
It is an easy fix, teach only one language for the 6 core areas of programming, namely:
1) Intro to programming (variables, loops, conditions etc. up to functions) 2) Complexity management, usually OOP 3) Building a GUI (it is not trivial and needs to be a course on its own) 4) Connecting to a database (also not trivial) 5) Data Structures and Algorithms 6) Compilers and programming languages (basically popping the hood of programming)
In school, after learning OOP in Java we switched to web dev and learned javascript and php. We completely abandoned learning GUI and DB for java.
Algorithms was taught by a visiting lecturer in C++ and after mid-sem we switched to Data Structures in java??
The universities are doing a fine job, but please just stick to one programming language for these core areas and everything will be great.
I came to this conclusion before AI took over. It will be interesting to see how AI changes the Computer Science curriculum in the years to come.
Personal and physical security for founders, operators, and investors
[0] https://a16zcrypto.com/posts/article/personal-physical-secur...
The ~10% good that comes from keeping in touch with people, for example, is not really worth it especially for kids.
Whatever you do you are going to have to deal with the negative aspects of society in-person, and we've all kind of accepted that. Social media just doubles the problem.
Herman Chinery-Hesse, Ghanaian tech Wiz passes
As we know from Moore's Law, new tech will emerge and it would most likely be based on existing tech you should have learned from school.
You are going to be just as well-paid as a networking, hardware or general software engineer and it will look good on your CV.
Also this forum is littered with << after all these years in tech i feel like i know nothing >> career existential angst. So learning that stuff in school would avoid that issue.
Stay in school kids. ;)
I am constantly running into people who feel like they are missing something in their CS pedagogy without this rigorous math knowledge.
After many false starts to correct this, I think a good plan would be to enrol in an affordable long distance or online course in math - so it's not full time - and stick to a timetable and deadlines in order to faithfully complete the work and become as familiar with the material as it pertains to you, just passing where you need to pass and diving deep when it directly affects you and your work.
My strategy is to get to the 10th chapter of the book skipping the exercises, then go back and try them with a better overall understanding of the language and its nuances.
Great series.
Housing policies, medicare and today's problem of defund the police can be better analysed if the framework of second-order thinking is used to view the pros and cons of such policies and their subsequent ramifications.
Second-order thinking is a great mental model to have and helps us address some of the cognitive biases that get in our way when making choices.
To me this form of thinking is evident in chess, the evaluation necessary to make a single move gets us to look at the consequences after the third and fourth move before a final decision is made.
I believe when the time allows for it we should really consider the future ramifications of our actions before making a move.
[0] https://www.amazon.com/Applied-Economics-Thinking-Beyond-Sta...
Ocean's 12 is one of the greatest movies ever made.
It is a reality TV-esque take on the lives of master thieves. This begs the question, what does the life of a master thief look like? Is it that of the Night Fox? A wealthy, sophisticated French aristocrat, well-educated and very serious about his craft. Someone who has mastered the art of capoeira to evade security laser beams for example, and goes to such great lengths to be the best?
The second question is that of why? Why do you do what you do? What is the Night Fox's motivation for being a master thief? The relentless pursuit of perfection and pulling off the greatest heist ever? Just becoming the best for being the best sake?
I would like to present a real life example to you: the ongoing Messi versus Ronaldo debate. Is the greatest football player an inimitable, natural-born artist or a perfection obsessed workaholic who probably owns a cryogenic chamber in which he sleeps every night to maintain peek physical fitness?
With these questions in mind, a second and third viewing of the Ocean's 12 movie will help you decide the debate of who is the greatest thief of them all.
If you were disappointed because you were looking for a heist movie with cool gadgets and mind-freak tricks, you can google "heist movie" and watch whatever pops up first (Now You See Me).
Ocean's 12 is for philosophical rumination.
"Opportunities are flourishing today in Space Tech. There's now an increasingly connected ecosystem to support even pre-seed stage aerospace founders - and Founder Institute can increase any aspiring space technology entrepreneur's chances of success, by providing the necessary founder mindset and key network connections" [0]
[0] https://fi.co/insight/founder-institute-space-tech-virtual-2...
Which of these 3 aspects do you feel C would help you understand better?
Maybe you are asking this question because you want to understand programming languages and how they work in which case a course in compilers and programming languages from a MOOC would help.
Ask HN: How do you learn to build substantial, real world apps?
I am learning to build apps in android. Most of the tutorials and even books I come across have quite small examples to follow, usually 2 activity files and 2 layout files. Honestly, the progress to build a substantial app is a bit slow because the projects are so small. It feels like being stuck as a beginner.Looking at examples of most apps, they are usually made up of 10+ class files serving...
This is an open question to all.
I want to know how you made the jump to 10+(activity and layout) files in a project, what resources lead you to getting to this level?
One way of deciding which language to choose is by surveying the top ten languages over the last 5 years and comparing it to the most common language most of your courses will be taught in. If your school is teaching Pascal or COBOL, the survey of relevant programming languages will help you avoid making the mistake of learning a “useless” language.
Then pick a nice tome, (I personally use the Deitel series) and just go through it faithfully for the next few years of college and after until - and this is the important part - you complete it.
You want a book with complete examples - not snippets of code. You have to type out these examples and have it run. This works in the skill of being able to write complete code of up to 200+ lines without breaking a sweat. A very valuable skill to have going into your senior year and the first few years of work. You don’t want to learn this on the job.
Learn the fundamentals of the language(loops, conditions, etc), learn data structures and algorithms and then learn to create GUI applications. Learn networking and databases. Learn everything in that one language. Again it’s important that you pick a general-purpose language to learn. You are not picking a language for its speed or unique characteristics, you simply want a language in which you can do everything.
And after all this learn to make simple games in that particular language or any other broad projects that you find interesting. I recommend game programming because it usually brings every part of the language together in one application, helping to keep your broad skill set sharp.
I’m also going to throw in a schedule you can use. Ideally aim for one week to complete a chapter, meaning a minimum of 2 hours every other day within a week. This weekly consistency will probably set in after your first year but if you stick to it, I can promise you from personal experience that you will master programming.