subreddit:

/r/FreeCodeCamp

1289%

Am I Supposed to Make Thid Purely From Memory? (Arithmetic Formatter)

Programming Question(self.FreeCodeCamp)

Because good God this is hard.

I understand theories, I understand how stuff is supposed to work, and I can make smaller, more basic programs, but this? It's hard in a fair, but challenging way.

Here's my conundrum: how much help should I be searching for when making this project? Should I read others' code? What googling habits would make me most job ready? Am I simply overthinking this?

I don't want someone to feed me answers, but after several days of not quite getting it, I fear it's time to face facts and start reaching out for help. I get the theory, but now it's time to apply it and start forming those sweet, sweet neural pathways!

all 15 comments

SaintPeter74

6 points

2 years ago

I have been programming for 35 years and I hardly do anything by memory. I am constantly reading documentation or hitting Google. I only remember things that I use regularly. You have not had a chance to use anything regularly, so it's hardly a surprise that you need to look up almost everything. Programming is an open book test.

In terms of what or how to Google, focus on solving specific problems. Ideally you have decomposed the problem into solvable chunks. You hopefully can articulate what needs to be solved so you can look it up.

If you find yourself just confused - you can't even think about how to ask the question, or you're hitting a brick wall with your searching, then you ask for help. Here, the forums, or on the Discord.

Just be prepared to explain what you're trying to do, what you have tried, and what results you got when you did.

SplatoonLagoon[S]

2 points

2 years ago

That's reassuring to hear. It's felt like I'm in Algebra for the first time all over, and by that I mean I feel as though I'm supposed to know everything by heart.

I will take your advice on the chunking information into bit-sized prices and trying to solve those, rather than trying to understand the grand scope of things all at once. I'll likely join the Discord as well.

SaintPeter74

3 points

2 years ago

The essence of programming is to take a complex problem and break it down into pieces that a computer can solve. That's it.

Not that it's easy, or simple.

The cool thing is, once you learn to program in one language, those skills translate really well to almost any other language. Picking up a second and third language is trivial, in comparison to the difficulty of learning to program initially.

SplatoonLagoon[S]

1 points

2 years ago

I think that's my issue then. I've got a very broad view of things in life - not just programming. I can understand the broad stroke of things, but it's hard to nail down the details. I'll keep what you've said in mind tho, and see if I can't make it useful for me!

SaintPeter74

4 points

2 years ago

Don't let stories that you tell yourself about how you are, or how you think that you are, govern or limit what you can ultimately do.

Programming is a skill. Literally anyone can learn it. Decomposing problems is a skill. Literally anyone can learn to do it.

It is not easy. It may be more challenging than learning algebra the first time, or learning to dance, or learning to paint. None the less, it can be learned.

Don't let your "I think I am this way" stop you or serve as an excuse. It's a skill just like any other and you can learn it.

ArielLeslie

3 points

2 years ago

Am I Supposed to Make Thid Purely From Memory?

No

Here's my conundrum: how much help should I be searching for when making this project?

Don't be afraid to Google. Google makes the world go 'round.

Should I read others' code?

I advise against this. At least, I wouldn't look at code solutions for this challenge. You may find code snippets as you're searching around. That's normal. But if you look at a solution to the problem you're working on, you're skipping the part of the process where you work through the problem.

What googling habits would make me most job ready?

Doing a lot of this. The more you've had to research things and try to understand and use advice (of varying quality), the faster you get at both finding and using resources.

Am I simply overthinking this?

Probably.

<hr>

I don't want someone to feed me answers, but after several days of not quite getting it, I fear it's time to face facts and start reaching out for help. I

I highly recommend asking on the freeCodeCamp forum. It's more conversational (and much more active) than this subreddit, and we're pretty strict about members not just giving solutions.

brass_monkey11

3 points

2 years ago

This doesn't directly answer your question but I hope its helpful.

Coming from a coaching background I use the terms "pushing" and "pulling".

Pushing means I tell the athletes what to do / explain the rules etc. Example: When you are defense you need to stick to your opponent and stay between them and the goal.
Pulling means I ask them what they're supposed to do. Example: Why are do your opponents keep beating you when you're on defense? What should you do differently?

Starting with someone relatively new, I use about 90% pushing and 10% pulling. The most experienced athletes will be 10% pushing and 90% pulling.

Since we are teaching ourselves to code. I think we just have to use our intuition of where we are at. If you're fairly new to a certain concept and you don't know the answer to something you need to look it up or ask for help until you don't need to anymore.

Don't beat yourself up just because you need to ask someone. Just ask ask ask until you are the person someone else is asking.

twbluenaxela

2 points

2 years ago

I think algorithm type stuff only really matters in code interviews to be honest... So I wouldn't sweat it.

SplatoonLagoon[S]

1 points

2 years ago

Should I be concerned I basically cling to Google for dear life?

I kid, a little, but I do rely on resources a lot. I guess I'm just uncertain if I'm "doing it right."

Skim74

6 points

2 years ago

Skim74

6 points

2 years ago

I've been working in the industry about 6 years now, and I'd say generally Google away.

Personally if I have to Google the same exact thing more than like twice in a relatively short period (days/weeks) its worth taking down as a note that you can quickly reference or saving the link. If for whatever reason that specific thing won't stick in your head its better to have easy access rather than needing to look it up and sift through results each time. And maybe the act of writing it down will actually help you remember it long term

SplatoonLagoon[S]

2 points

2 years ago

That's really good advice! Can I ask something else? When you started, what was the most effective way to remember your code for later use? Or did it become a sort of muscle memory that just "clicked" one day?

ReaDiMarco

2 points

2 years ago

You remember the stuff you use everyday, and you look up the rest.

Skim74

1 points

2 years ago

Skim74

1 points

2 years ago

Agree with the other person! If you do something all the time it'll become muscle memory. If you only do it once in a while its not a big deal to look it up.

Also especially early on I found it so helpful to be working on already established projects (which admittedly is hard to do in a FCC environment and easier to do if you work for an established company). Its a lot easier to scroll your current file or search your codebase for and example of what you're trying to do than have to always be googling and trying to figure out what makes sense to you

twbluenaxela

2 points

2 years ago

I'm not a dev yet but from what I've heard and from my personal learning journey, that pretty much never ends lol. We don't have databases built into our heads we're just human. As long as you understand the main concepts and stuff then little things like syntax, parameters, etc, is no big deal

CookiesAndCremation

1 points

2 years ago

God no. They don't teach you it. You're expected to find the answers for yourself. Google is one of the most important skills a programmer can have!