Live data from Hacker News

I will now send this to beginner programmers

headlinedev.xyz

51–60 of 76 posts

Re: I will now send this to beginner programmers

#51
post #30

Earlier quoted context omitted.

I found the book Exercises for Programmers ( https://www.programmingbooks.dev/#exercises-for-programmers ) to be invaluable to help learn new languages and frameworks. Beginners seem to appreciate it as well. It’s just an ordered collection of exercises that starts easy and builds up to more challenging ones. I can’t overstate the power of this simple book.

It's 2 clicks to reach Amazon so you can make some referral money, but your site doesn't add any value. Might as well link to Amazon directly.

How do you know it is their site?

Re: I will now send this to beginner programmers

#52
post #30

Projects are great but there's a deceptively challenging step in "formulate a small and feasible project idea". It's really hard to come up with a small and feasible project when you're a beginner. First, beginners don't know what's feasible. To a beginner all of programming is computer magic. There's not a lot of difference to a beginner between training a machine learning system for classifying different apples and…

I found the book Exercises for Programmers ( https://www.programmingbooks.dev/#exercises-for-programmers ) to be invaluable to help learn new languages and frameworks. Beginners seem to appreciate it as well. It’s just an ordered collection of exercises that starts easy and builds up to more challenging ones. I can’t overstate the power of this simple book.

I really dig the list of books, thanks for sharing! Is that your site?

Re: I will now send this to beginner programmers

#53

Projects are great but there's a deceptively challenging step in "formulate a small and feasible project idea". It's really hard to come up with a small and feasible project when you're a beginner. First, beginners don't know what's feasible. To a beginner all of programming is computer magic. There's not a lot of difference to a beginner between training a machine learning system for classifying different apples and…

Note that the flowchart given (with its explicit instructions for beginners to back off —hopefully exponentially— upon discovering one has bitten off more than one can chew) may be applicable even for non-beginner programmers: Dealing with failure is easy: Work hard to improve. Success is also easy to handle: You've solved the wrong problem. Work hard to improve. — Alan Perlis.

To me the quote seems not to talk about backing off, but about working hard to get through.

Re: I will now send this to beginner programmers

#54
post #2

>Chat room helpers often will try and lead you to discover the right answer yourself. It may feel frustrating, but play their game and you will learn. This is the discussion level of the pyramid. I fucking hate this so much. You spend hours trawling through Google search results and finally decide the answer isn't out there. Stack overflow is caustic so you don't want to ask there. Hop on IRC and ask "how do I do X?"…

I agree with you completely.

I am in IT/dev for 35 years and love to discover new stuff, and to help others to start. I am a HUGE fan of what I call "bootstrapping" knowledge.

Say I know Python and want to code in Go. I craft a question that shows that I understand the problem but could not find the documentation that would explain this in Go. This is obviously not "how to assign a variable" but rather "how to asses the kind of error returned by the function" (in Python you would do that with an exception, in Go this is borderline voodoo to understand that the error is because there is no network, rather than a DNS issue for instance).

I then get either downvoted because my question is not elitist enough, or someone plays kindergarten teacher by saying "you have toooo ... u... un... unwraaaa...?"

These people are fucking annoying and the site become s shitshow (yes - I am looking at you Stack Overflow questions tagged with golang)

Just say "you need to unwrap the error by doing this and that, the documentation is here). I do not want them to explain me what an error is, or why there can be many, or the philosophical religion of the one who coded it that way. I. Just. Want. To. Start. Somewhere.

Re: I will now send this to beginner programmers

#55
post #43

As a beginner programmer currently learning Django, the biggest challenge I have is working out how to structure data models (E.g what should be a separate model that is referenced with a foreign key, vs just a field, or a sub class etc) Does anyone have any recommendations for learning good practices when designing these models? But also not super academic data structures etc

There are multiple things that come to mind, that you can look into, perhaps find a good explanatory text or video about:

ERM - Entity Relationship Model

1., 2., and 3. normal form for relational databases (usefule to avoid redundancy and designing it, so that it can be extended later, and avoiding pitfalls like non atomic values).

User stories and thinking about, whether they can be comfortably implemented using the proposed model.

SQL - for understanding what might happen behind the ORM (Object Relational Mapper).

Those things are however not Django specific, which might be the reason, why one might struggle with them, if one is just starting out coding with Django. Django tutorials will usually not cover these. However for a personal project, maybe a not perfect database design is OK as well. Do not despair because of it.

Re: I will now send this to beginner programmers

#56
I agree that working on a project is the best way to learn programming, but I have to emphasize: it's the structured learning that ties it all together and allows you to get a better understanding on how to tackle such projects, whether self-learning or guided. You need to be methodically exposed to available tools, solutions, and common practices you may not have come across when working on a project.

Re: I will now send this to beginner programmers

#57

Earlier quoted context omitted.

It's 2 clicks to reach Amazon so you can make some referral money, but your site doesn't add any value. Might as well link to Amazon directly.

How do you know it is their site?

Well it's in their profile (which is good practice so kudos for that). But if you see someone linking to the same site over and over again when the link content doesn't add any actual value it's kind of a giveaway.

Re: I will now send this to beginner programmers

#58
post #31

Earlier quoted context omitted.

> When I'd mentor underclassmen in college, they'd always say something like "let's build a mobile app that lets people create accounts for their pets and then uses machine learning to pair them with the best possible dog walker" as their "small and feasible" project. Maybe they can mooch off some existing library or service. Yelp has an API which you could use to find dog walkers near you. By the way, what's with th…

> Is that supposed to be cool or something? Yes. All CSS is written the way it is either for aesthetics or for accessiblity (readability, etc).

Or because the author didn’t know any better.

Re: I will now send this to beginner programmers

#59
post #41

Projects are great but there's a deceptively challenging step in "formulate a small and feasible project idea". It's really hard to come up with a small and feasible project when you're a beginner. First, beginners don't know what's feasible. To a beginner all of programming is computer magic. There's not a lot of difference to a beginner between training a machine learning system for classifying different apples and…

True. I've seen a lot of beginners (typically those who learn through various YouTube videos and a some online pagess, but not through a systematic guide like a book) having a hard time deciding "what a super simple project" is. For example: after learning the basic concepts of loop and condition checking, they have no idea how to utilise those in a very simple app. I say "hmm try to write a simple word guessing game…

In fairness to those learning through YouTube or other modern sources: I learned from books and after finishing the exercises in the books I also had no idea what a "super simple project" was, or at least what one step up from the book was.

Ultimately I learned by starting projects that were too large, hitting a roadblock, and stepping back to learn about that thing. Then starting another project and repeating.

This process took years and years before I was reasonably confident in estimating the size of a project. And to be honest even now, nearly 25 years after writing my first tiny cli trivia game, I still get it wrong sometimes, especially in a new domain.

At the end of the day estimation is hard even for veterans of the software industry.

Re: I will now send this to beginner programmers

#60

Who are these beginner devs? Do people actually get a bachelors degree and proceed to not work in the field? Who are these people who take up a craft of creating software and need to be told to, create software, to get better at it? Presumably, people who get into this, already want to create stuff. If they have some other motivation, I don't want anyone telling them the 'secret' :)

>Do people actually get a bachelors degree and proceed to not work in the field?

My best friend did exactly that.

Post reply on HN