Author Topic: Code Academy Learning Path?  (Read 25278 times)

0 Members and 1 Guest are viewing this topic.

unreadPostsSinceLastVisit

  • Guest
Does anybody know if there is a technical reason magic constants and magic numbers are bad?

In addition to the reasons you cited, I will add one more:  If other people need to read/maintain your code, it may not be obvious to them what the magic value means (even if it seemed obvious to you when you wrote it), and you may run into situations where another developer (or, after enough time has passed, you) tries to "fix" your code because they don't understand what it is supposed to do.

Take a look at http://programmers.stackexchange.com/q/266717/ and http://programmers.stackexchange.com/questions/251540/ for some good discussions on magic constants.

But it's pretty much just for clarity and preventing your code from turning into an enigmatic riddle, and poorly written but logical code that uses lots of them will still compile and run just fine at the same speeds, right (not that I am advocating their use)?

Anyway, I need to try a new book. I don't care what programming language. My only two requirements are that it be a well-written/gripping read, and a consistent, current, and in depth enough book that if I work through it, I'll be at a point where I can write almost anything by supplementing my knowledge here and there independently.

Open for recommendations.

Offline 70231f697a2b3c2b

  • Full Member
  • ***
  • Posts: 61
    • View Profile
Does anybody know if there is a technical reason magic constants and magic numbers are bad?

In addition to the reasons you cited, I will add one more:  If other people need to read/maintain your code, it may not be obvious to them what the magic value means (even if it seemed obvious to you when you wrote it), and you may run into situations where another developer (or, after enough time has passed, you) tries to "fix" your code because they don't understand what it is supposed to do.

Take a look at http://programmers.stackexchange.com/q/266717/ and http://programmers.stackexchange.com/questions/251540/ for some good discussions on magic constants.

unreadPostsSinceLastVisit

  • Guest
How is everyone doing in this?  Would like to hear if people are continuing or have hit any road blocks.

I'm almost finished with the "Beginning Javascript" text book I bought a few months ago.  I've also been trying to learn AngularJS in parallel.  So far I have created a trading simulator for forex to analyze expected return vs risk.  Also created a basic betting app that I can hopefully utilize the DEX with at some point.  Yet to do anything with bitshares, but hopefully soon.

One of the chapters of the text I was using started to deviate from the online content at their website, which was outdated. Then I found a second job, hours started picking up at my first job, and a perfect storm of losing interest occurred.

Someday when I have time again I'll probably try to find a new book or something and take another crack at it.

Offline lil_jay890

  • Hero Member
  • *****
  • Posts: 1197
    • View Profile
How is everyone doing in this?  Would like to hear if people are continuing or have hit any road blocks.

I'm almost finished with the "Beginning Javascript" text book I bought a few months ago.  I've also been trying to learn AngularJS in parallel.  So far I have created a trading simulator for forex to analyze expected return vs risk.  Also created a basic betting app that I can hopefully utilize the DEX with at some point.  Yet to do anything with bitshares, but hopefully soon.

Offline EstefanTT

Hi coders,

I recently learn HTML and CSS to build the BitShares French ConneXion web site. Now I'm starting to play with PHP an MySQL, trying some stuff.

I did this recently : http://www.bitsharesfcx.com/zzz_dex_p.php
It checks the volume of our DEx every hour and store it in a database, then spits it in a table. Enjoy !!

I'm now trying something else. I made a script to go find the price of the different crypto coins I'm investded in. I multiplicate the price by the coins I have and it give me the total.
So I can have a quick look at how my global investment is going (it depends a lot of BitShares but the recent raise of maidsafe had an nice impact on it)

The only coin I have I can't go grab its value on coinmarketcap are brownies.

Anyone have an idea how could I get the browies price in bts, USD or EUR with some lines of PHP ?

EDIT 2016/02/15 : I found a way, I use the BROWNIE:PTS page of cryptofresh to grab the price.
« Last Edit: February 15, 2016, 03:28:50 pm by EstefanTT »
Bit20, the cryptocurrency index fund http://www.bittwenty.com
(BitShares French ConneXion - www.bitsharesfcx.com)

unreadPostsSinceLastVisit

  • Guest
Does anybody know if there is a technical reason magic constants and magic numbers are bad?

I understand the readability and convenience reasons. example: a constant occurs many times throughout the code, and you see the need to change that constant someday, you an do it all in one spot. I also understand how x < MAX_LETTERS_FOR_PASSWORD will make more sense to future human readers than x < 50.

Are those the only reasons though? Is there any technical advantage to initializing and declaring as many constants as possible at compile-time/run-time?

unreadPostsSinceLastVisit

  • Guest
@fuzzy and @merivercap

if you guys want to join lil_jay and work through javascriptissexy.com with him I'd jump in too. and we could all talk about the lessons on mumble.

otherwise im pretty intent to learn c++. sounds like I'm eventually going to have to pick up some javascript anyway though.

currently taking a look at programming: principles and practice using c++ by bjarne stroustrup, the languages creator. from the introduction, the way he describes this book, it sounds like exactly what I need so I think I might give it a try.

yeh sure lets all talk sometime in mumble about it. right now im at the hospital with a fam member though so wont be today :/

hope all is okay :(

Offline fuzzy

@fuzzy and @merivercap

if you guys want to join lil_jay and work through javascriptissexy.com with him I'd jump in too. and we could all talk about the lessons on mumble.

otherwise im pretty intent to learn c++. sounds like I'm eventually going to have to pick up some javascript anyway though.

currently taking a look at programming: principles and practice using c++ by bjarne stroustrup, the languages creator. from the introduction, the way he describes this book, it sounds like exactly what I need so I think I might give it a try.

yeh sure lets all talk sometime in mumble about it. right now im at the hospital with a fam member though so wont be today :/
WhaleShares==DKP; BitShares is our Community! 
ShareBits and WhaleShares = Love :D

unreadPostsSinceLastVisit

  • Guest
@fuzzy and @merivercap

if you guys want to join lil_jay and work through javascriptissexy.com with him I'd jump in too. and we could all talk about the lessons on mumble.

otherwise im pretty intent to learn c++. sounds like I'm eventually going to have to pick up some javascript anyway though.

currently taking a look at programming: principles and practice using c++ by bjarne stroustrup, the languages creator. from the introduction, the way he describes this book, it sounds like exactly what I need so I think I might give it a try.

Offline merivercap

  • Hero Member
  • *****
  • Posts: 661
    • View Profile
    • BitCash
Yeah CodeAcademy is a great start.   I'm a total newb.  I ran through a number of their courses.   Udemy is also a good next step after CodeAcademy.. there is one on ReactJS I just finished: https://www.udemy.com/learn-and-understand-reactjs/learn/#/  You can get a Udemy coupon and take courses for $10.  There is also one for Modern React that I signed up for by the same instructor.

Other than that it's probably good to just work on a real project.   You can count me in on any coding group...
BitCash - http://www.bitcash.org 
Beta: bitCash Wallet / p2p Gateway: (https://m.bitcash.org)
Beta: bitCash Trade (https://trade.bitcash.org)

Offline fuzzy

Im definitely up for ideas on how we could all work together in some way.  someone posted a community awhile back on this thread pointing us to it in order to potentially partbrr with them, but like a week later when i went to find it and reach out the person who posted it must have deleted it...
WhaleShares==DKP; BitShares is our Community! 
ShareBits and WhaleShares = Love :D

Offline lil_jay890

  • Hero Member
  • *****
  • Posts: 1197
    • View Profile
Update on this: I managed to stay focused for a few weeks, then it lost my interest, in classic failure fashion.

Blew another week or two playing civ iv. realized that I've played that game for a decade and am still terrible at it. learning programming can't be THAT much harder than this.

the way I see it, this could be a major bitter defeat that results in me giving for an even longer amount of time and making zero progress.

or I could get my ass up and back on the horse, analyze what went wrong, and try again.

here's what I think went wrong:

1) I picked the wrong kind of book. In my quest to find something comprehensive, i went a little overboard and picked a book completely dedicated to syntax. I think it would have made a much better reference book than something for a near-newbie to learn from.

2) I think I picked the wrong programming language. I need to be picking a tool based on what I want to do. And what I want to do, people use c++, so that should be the syntax I'm learning, even if it is a little tougher. as I was forcing myself to press on in that book I kept thinking "even after I learn python, I'm still another book on programming away from getting closer to what I really want to study." that allowed a discouraging feedback loop to fester.

So I'm reexamining the situation. I really want to make something of this so I'm researching new learning options. These ones oriented towards C++, and designed to be a TUTORIAL, not a reference. I'm going to choose carefully this time. I want something readable, that doesn't go into way too much detail, but still goes deep and teaches what I need to know.

If anybody gives a shit, I'll let you know what I decide.

I did a bunch of the paths in codecademy and realized that it is just a primer.  I needed to practice better as codecademy just has you fill in little snipits here and there.  It's great as an introduction but i needed something thorough and with more examples so that I could get my brain to actually comprehend and apply what I was reading.

I ended up going to Javascriptissexxy.com and following the learn javascript properly path.  So far so good as it combines codecademy, a text book, code school and some blog posts.  The course is broken down into 6 weeks of learning.  Best of all it's free other than buying the textbook for $30.

@merockstar I chose Javascript because BM said that plasma was going to be very friendly to people who know js... I thought I would get a jumpstart.

that is excellent! are you still popping into mumble in the afternoons? my work situation is weird right now. they'll use me for a week then abandon me. then call me in a few days a couple weeks later and I'm finding it hard to get into a routine.

it's too bad there isn't more interest in something like this here. just three different guys with interests in learning different things. I feel like something like the original purpose of this thread would be difficult to organize that way.

but it sounds like javascriptissexy has done just that for you!

I think I missed the thread where it was revealed what Plasma is going to be exactly. Still a mystery in my mind. That could maybe be the motivation I need to jump in and join you on javascript. what you describe does sound like something I really need.

But designing websites just doesn't appeal to me the way writing applications does. the ability to tell a computer what you want it to do with the hardware it's running on just sounds so much cooler to me than coding up a webpage. Bitcoin is C++, and so is BitShares. Most major for profit products are written in C++. C++ just seems like the language for somebody who wants to step up and wield the true power of a computer. It's the one that really excites me to think about knowing.

I was considering other learning paths, but the FAQ in the C++ section of the learnprogramming subreddit had the following advice: It doesn't matter what programming language you want to learn, pick the tool that suits what you want to do and learn it. If you want to learn C++, learn C++. If you want to learn Python learn Python, but don't pick Python because it's easier for learning. That was exactly what I was doing.

That's exactly what I'd be doing for Javascript too, unless somebody sells me on it. Maybe I should google "Why learn Javascript," see if I can stimulate my own interest.

Does anybody know what would be a good language to study for somebody interesting in writing apps on ethereum? Just out of curiosity.

I actually had a semester of coding in C++ and C# during college.  From what I can tell they are very similar to javascript.  They are all object oriented programming languages with similar syntax.

When I was starting I was kind of in the same boat as far as picking a language... what I realized is that choosing a language isn't like choosing a car.  It's not I'm a Ford guy vs I'm a Chevy guy.  Many languages compliment each other.  Just look at bitshares... the wallet I believe is Javascript while the code is C++.  I also was doing some research on Reactjs vs Angularjs.  What I found out is that these are both used to write apps, but become much more powerful when used together.

I think when you say javascript is just for designing websites, you are thinking more html, css, and jquery (which is just a library for javascript).  I believe javascript can do just about anything when it comes to apps and devices, including storing user authentication data.

I don't think you can go wrong starting with javascript.  I think you are going to be able to do everything that you listed and probably more, especially if plasma turns out to be similar to what BM was talking about.  And once you learn it, you shouldn't have much trouble picking up on C++ later.

unreadPostsSinceLastVisit

  • Guest
Update on this: I managed to stay focused for a few weeks, then it lost my interest, in classic failure fashion.

Blew another week or two playing civ iv. realized that I've played that game for a decade and am still terrible at it. learning programming can't be THAT much harder than this.

the way I see it, this could be a major bitter defeat that results in me giving for an even longer amount of time and making zero progress.

or I could get my ass up and back on the horse, analyze what went wrong, and try again.

here's what I think went wrong:

1) I picked the wrong kind of book. In my quest to find something comprehensive, i went a little overboard and picked a book completely dedicated to syntax. I think it would have made a much better reference book than something for a near-newbie to learn from.

2) I think I picked the wrong programming language. I need to be picking a tool based on what I want to do. And what I want to do, people use c++, so that should be the syntax I'm learning, even if it is a little tougher. as I was forcing myself to press on in that book I kept thinking "even after I learn python, I'm still another book on programming away from getting closer to what I really want to study." that allowed a discouraging feedback loop to fester.

So I'm reexamining the situation. I really want to make something of this so I'm researching new learning options. These ones oriented towards C++, and designed to be a TUTORIAL, not a reference. I'm going to choose carefully this time. I want something readable, that doesn't go into way too much detail, but still goes deep and teaches what I need to know.

If anybody gives a shit, I'll let you know what I decide.

I did a bunch of the paths in codecademy and realized that it is just a primer.  I needed to practice better as codecademy just has you fill in little snipits here and there.  It's great as an introduction but i needed something thorough and with more examples so that I could get my brain to actually comprehend and apply what I was reading.

I ended up going to Javascriptissexxy.com and following the learn javascript properly path.  So far so good as it combines codecademy, a text book, code school and some blog posts.  The course is broken down into 6 weeks of learning.  Best of all it's free other than buying the textbook for $30.

@merockstar I chose Javascript because BM said that plasma was going to be very friendly to people who know js... I thought I would get a jumpstart.

that is excellent! are you still popping into mumble in the afternoons? my work situation is weird right now. they'll use me for a week then abandon me. then call me in a few days a couple weeks later and I'm finding it hard to get into a routine.

it's too bad there isn't more interest in something like this here. just three different guys with interests in learning different things. I feel like something like the original purpose of this thread would be difficult to organize that way.

but it sounds like javascriptissexy has done just that for you!

I think I missed the thread where it was revealed what Plasma is going to be exactly. Still a mystery in my mind. That could maybe be the motivation I need to jump in and join you on javascript. what you describe does sound like something I really need.

But designing websites just doesn't appeal to me the way writing applications does. the ability to tell a computer what you want it to do with the hardware it's running on just sounds so much cooler to me than coding up a webpage. Bitcoin is C++, and so is BitShares. Most major for profit products are written in C++. C++ just seems like the language for somebody who wants to step up and wield the true power of a computer. It's the one that really excites me to think about knowing.

I was considering other learning paths, but the FAQ in the C++ section of the learnprogramming subreddit had the following advice: It doesn't matter what programming language you want to learn, pick the tool that suits what you want to do and learn it. If you want to learn C++, learn C++. If you want to learn Python learn Python, but don't pick Python because it's easier for learning. That was exactly what I was doing.

That's exactly what I'd be doing for Javascript too, unless somebody sells me on it. Maybe I should google "Why learn Javascript," see if I can stimulate my own interest.

Does anybody know what would be a good language to study for somebody interesting in writing apps on ethereum? Just out of curiosity.

Offline lil_jay890

  • Hero Member
  • *****
  • Posts: 1197
    • View Profile
Update on this: I managed to stay focused for a few weeks, then it lost my interest, in classic failure fashion.

Blew another week or two playing civ iv. realized that I've played that game for a decade and am still terrible at it. learning programming can't be THAT much harder than this.

the way I see it, this could be a major bitter defeat that results in me giving for an even longer amount of time and making zero progress.

or I could get my ass up and back on the horse, analyze what went wrong, and try again.

here's what I think went wrong:

1) I picked the wrong kind of book. In my quest to find something comprehensive, i went a little overboard and picked a book completely dedicated to syntax. I think it would have made a much better reference book than something for a near-newbie to learn from.

2) I think I picked the wrong programming language. I need to be picking a tool based on what I want to do. And what I want to do, people use c++, so that should be the syntax I'm learning, even if it is a little tougher. as I was forcing myself to press on in that book I kept thinking "even after I learn python, I'm still another book on programming away from getting closer to what I really want to study." that allowed a discouraging feedback loop to fester.

So I'm reexamining the situation. I really want to make something of this so I'm researching new learning options. These ones oriented towards C++, and designed to be a TUTORIAL, not a reference. I'm going to choose carefully this time. I want something readable, that doesn't go into way too much detail, but still goes deep and teaches what I need to know.

If anybody gives a shit, I'll let you know what I decide.

I did a bunch of the paths in codecademy and realized that it is just a primer.  I needed to practice better as codecademy just has you fill in little snipits here and there.  It's great as an introduction but i needed something thorough and with more examples so that I could get my brain to actually comprehend and apply what I was reading.

I ended up going to Javascriptissexxy.com and following the learn javascript properly path.  So far so good as it combines codecademy, a text book, code school and some blog posts.  The course is broken down into 6 weeks of learning.  Best of all it's free other than buying the textbook for $30.

@merockstar I chose Javascript because BM said that plasma was going to be very friendly to people who know js... I thought I would get a jumpstart. 

unreadPostsSinceLastVisit

  • Guest
Update on this: I managed to stay focused for a few weeks, then it lost my interest, in classic failure fashion.

Blew another week or two playing civ iv. realized that I've played that game for a decade and am still terrible at it. learning programming can't be THAT much harder than this.

the way I see it, this could be a major bitter defeat that results in me giving for an even longer amount of time and making zero progress.

or I could get my ass up and back on the horse, analyze what went wrong, and try again.

here's what I think went wrong:

1) I picked the wrong kind of book. In my quest to find something comprehensive, i went a little overboard and picked a book completely dedicated to syntax. I think it would have made a much better reference book than something for a near-newbie to learn from.

2) I think I picked the wrong programming language. I need to be picking a tool based on what I want to do. And what I want to do, people use c++, so that should be the syntax I'm learning, even if it is a little tougher. as I was forcing myself to press on in that book I kept thinking "even after I learn python, I'm still another book on programming away from getting closer to what I really want to study." that allowed a discouraging feedback loop to fester.

So I'm reexamining the situation. I really want to make something of this so I'm researching new learning options. These ones oriented towards C++, and designed to be a TUTORIAL, not a reference. I'm going to choose carefully this time. I want something readable, that doesn't go into way too much detail, but still goes deep and teaches what I need to know.

If anybody gives a shit, I'll let you know what I decide.