Is Java easy to learn or am I just not good at programming?
First of all, I think we can all agree: Awwww, muffin, no! Second, “99% of the time, when you’re running into problems…learning a programming language -especially Java- it’s normal for everybody and 99% of the time you just have to give yourself some time and a chance.”
So there you have it. The VLOG goes into way more detail, including listing some of the easier, more synergistic languages to learn instead of the ‘Java jump’. Also, and I hate to do this but <Shameless Self Promotion>, we offer courses that take advantage of both coding experience AND teaching experience every step of the way. Check it out (links at the bottom).
The thing to remember is you’re not stupid, sometimes you just need to take it easy on yourself, give yourself a break, and be patient. Enjoy more sweet scenery of MTL at the end of this VLOG… Ye gods! Just look at all that green in the background. -Enjoy!
There is no better teacher of software development than the long term experience of building and refining a commercial app used by countless users.
As we get older we have friends who get married and have children. Sometimes while hanging out, maybe while having drinks or dinner, you might ask them how parenthood is going or (heavens forbid), you let it slip that you can’t wait to have children yourself, that it would be ‘fun’… Then you get to watch their brows furrow and the mood get very somber (did the lights suddenly dim in here? Did it get colder?!), and with a gaze that seems to penetrate your very soul they say in a foreboding voice, ‘YOU.HAVE.NO.IDEA.’. That somehow the scope and challenge of raising children is completely out your experience and in the abstract and ethereal, and one can never hope to grasp it until they are waist deep in it… Wow, that got ranty real fast…
Well, we’re going to make a statement that might put us in the same category as those pretentious parents but unlike those parents, we do it with love and encouragement…but we will dim the lights for dramatic effect… “You don’t really know app development until you’ve developed an app, taken it to market, gotten feedback, refactored/refined, and then made money with that app, or at least been part of a team that’s gone through that process where you’ve seen the app go from inception to actual functional use with the end user.” I know, for some of you ‘thems fightin’ words‘, but what we mean is that version 1 of your app, is not going to be the end – far from it in fact. A lot of (young) developers [devs] coming up are under the assumption that if they write the ‘perfect’ code, that the app will be perfect and there will be no need for a version 2, 3 or even 4. “…You have to expect that when you become a professional developer, that you’re going to go through many iterations…”. There is a purely academic idea that has been making the rounds lately in articles and even some YouTube videos about the “purity of code” or “purity of implementation”, and when you’re making commercial software, it’s just not the case.
The VLOG goes into waaaaayyyyy more robust detail, stemming from over 3 decades of experience in the business (which is like 269 years in young dev time), but what we really want you to know is, with regards to your app: (A) – Don’t worry about making mistakes (B) – Don’t expect that your first iteration of your code and your software is going to be perfect –it will never be perfect. so “…get your app out quickly (within reason, of course), don’t waste your time with perfect implementation.” Also, bonus material: We make fun of RUBY a lot. But at the end of the Vlog is a sort of postmortem theorizing -from a reliable source- why RUBY lost out on a huge share of the market. Plus, some sweet aerial scenery of MTL. -Enjoy!
How many hours a day should you spend learning code?
‘Eager beavers’ everywhere! Whether it be the gym, sweet/salty snacks, continuing education, or becoming the best damn Fortnite player in history, most of us tend to go ‘hard and fast’: that is to say we try to absorb as much as we can in as little time as we can. The result: We end up ‘burning out’ real bad and probably never want to return to the thing that hurt us so bad…at least for awhile. We’ve all been there, we want to do, learn, or be something so bad that we end of ‘OD’ing’ (over-dosing) on it. And this is especially true with learning; remember the all night ‘cram’ sessions before big exams when you were younger? Add to that the fact that you’re learning a new skill like coding, which sometimes is not as intuitive as you’re used to things being, and you could ‘burn out’ before your first session is done!
So how many hours a day should you spend learning to code? “If you’re first starting out, you should maybe limit it to 30-45 minutes a day. Whenever you start getting into code for the first time, you’re literally going to be re-wiring your brain physically …you’re going to be learning to think and process information in a totally different way.”
What’s really cool about this is learning in different ways is that it makes your brain ‘stronger’. Much like physically training with different exercises, disciplines, and sports makes your body stronger and more adaptable to different stresses and pressures, learning/thinking and reasoning in different ways re-wires the brain to be ‘fit’ (for lack of a better word) and more adaptable to different situations. And I don’t know about you guys, but as I get older and more set in my ways, the need for an agile mind is more and more necessary.
Always leave’em wanting more It’s an old vaudevillian/performer’s adage. It means don’t go overboard when entertaining/performing. Always leave your audience wanting more so they will return, buy more tickets and (more importantly), they’ll want to be there. Very apt and very applicable to learning, “you should leave your daily learning session (encoding) wanting more, not exhausted. You wanna leave it and go, ‘this is cool’ …you want to create an association that’s positive, that’s fun with coding…”.
The VLOG really goes into more detail about this, while adding a psychological angle to it …and what would a good VLOG be without a RUBY slam (there’s more than one!), BOOM! Also, check out our courses for coding, freelancing or entrepreneurship <links below>. They have been built from the ground up with this very principle in mind! Remember when you’re starting out be kind to yourself, take it slow and easy, and have fun so you’ll want to come back. Whether it’s learning a new skill or anything else in life, it’s just a good ‘code’ to have… -Enjoy!
A response to a recent video I made about people who are constantly doing tutorials instead of getting jobs.
If you’d like to see the first installment, click here, but in the spirit of ‘doing‘ we’re moving on! Sometimes we over prepare, guys, it happens. You’re so focused on making a big splash right outta the gate. You don’t want to be blindsided by anything and look like you don’t know what you’re talking about or look like a noob, so you prepare -you take tutorials and then you start thinking to yourself, ‘what if this happens? what if that happens?’ and you start doing more tutorials to be prepared for those things and before you know it, the fear of failure has you stuck. Instead of coming out of the gate; swinging, the gate flings open and you stand there paralyzed, not daring to move.
“It’s just fear: you don’t want to get into it… Just jump into it! Trust me, you’ll learn so much more by just jumping into a gig. Once you have your foundations down, do one or two tutorials and then do a gig and figure out how to get it done as you go. That’s how I did it, that’s how all developers started out.”
The VLOG goes into better detail, including the first full-stack gig that Stef took with no prior knowledge of it. Check out our courses (links below), if you’re interested – they are amazing – and remember, <I’m plagiarizing> A journey of a thousand miles starts with one step. Or think of the immortal words of Shia LaBoeuf and, “just DO it!!!!!” -Enjoy!
Is using developer tutorials cheating? Or are they the steps you need to take to move from beginner to advanced developer?
Imitation is the sincerest form of flattery…and in some cases, it’s also the quickest way to a lawsuit. Beginner devs are often cautious (and quite rightly so) when looking at someone else’s work/tutorial and wonder if making something similar is ‘cheating’?
Generally speaking, “it’s not cheating. Everything that you see in this world, whether it be software development, music, martial arts -whatever, it’s all based on other people’s work.” Some would even argue that’s how things evolve and get better; by different people messing around and riffing on the same idea. BUT, let’s clarify that, “if you’re stealing it; line for line, that’s bad -it’s illegal and it’s immoral. But if you’re learning how to do something…it’s not cheating to do a tutorial and then based off of that tutorial, you build your own app.” Of course, please do your due diligence, for example, “unless they give you specific permission to copy the code, don’t copy the code. But you can basically learn from it, and then write your own thing accordingly.”
At the end of the day your code/project will be different because everybody’s needs are different, so your app, project, etc, will be not be a carbon copy unless you want it to be…in which case lawyer up! But everyone had to start out somewhere and they became experienced by using what they saw and adding their own thing to reflect the needs of their client, employer, or the very project they were creating.
The VLOG goes into greater detail and you should check it out. Go out there and create, learn and be better than you were. -Enjoy!
Complex development can linger in production, as you work on the last 5% of the job.
So you’ve got your project, your app – mobile or web, etc. ready to go and you’re almost done, “You’ve got the end and use case defined, meaning people can run through your system, you’ve got the UX defined, you got your UI in place…now at this point you’ve got just 5% left -so you figure, ‘we’re going to crack this thing out in a month…or a week depending on the scope of the thing over all- but what you’re going to find is that last 5% lingers…” Oh yes, ladies and gentleman, like a fart left in the back of an airplane bathroom…it lingers.
Light at the End of the Tunnel To get that crucial 5% working from end to end takes longer than you think and that is just par for the course. “[You’ll] find all these little things: this has to be fixed here, that has to be fixed here…this is normal. Keep that in mind when you’re first getting into the game, especially when you’re dealing with clients, and you’re building their system; you’ve got to account for that last bit of back and forth.”
So there it is my weary devs… Check out the VLOG for the some more insight into ‘the forced march of the last 5%’ and just know that it’s normal and to always account for the back and forth between you and the client when you hit that last 5%… -Enjoy!
Heads up! This is going to be geared to our courses (specifically our web development course), but you can definitely take advantage of the information we’ll be providing…but it works best with our courses 🙂
So, when should you start freelancing after taking our developer course? “This is what I’d do: you finished my full stack course, you do all the foundations training, you do the first few projects that I suggest on the project section, and then the thing which you should do at this point is if you got my freelance course, you should read the first few chapters of the freelance course which gives you the framework to setup your freelance business. Then you have to complete your web design training as a padawan web designer or web developer-junior: what you do is you go out there and you do one or two small…SMALL projects as a freelancer for some independent company/third party.” Consider this your final exam cuz you’re going to be out there doing work AND communicating with clients! “…And if you have our freelance course, you’re going to get all the templates, the contracts, the initial proposal templates, etc…”
So there you have it. The VLOG goes into even more detail and you can even hear about how Stef got started out as a freelancer, having no idea how to build a CRUD based application and what he did. Thanks for listening to our shameless promos and if you’ve had your interest peaked by what it is we offer, check out our courses, it’s definitely worth your time. -Enjoy!
Spending all your time doing code tutorials, is not going to get you to developer-land quickly. You need to get on with it, and start building real projects!
In life there are two different approaches to situations that people generally take. There are ‘preppers’ and there are ‘doers’…and no doubt you’ve come across this in many parts of your life and you’ve chosen to be one or the other, to varying degrees of success, I’m sure, but let’s talk about prepping vs. doing in the context being a coder, programmer, dev, etc, etc.
Be warned there are shameless promos ahead… Now we want to be clear that there is nothing wrong with a certain amount of prep; no one is saying that you should charge head first into the mouth of the beast(as bad-ass as something like that would figuratively be), without knowing what kind of a beast it is, do I have an appropriate weapon? Is there a healer present if things go bad? Prep like that is perfect for most situations (and a good indicator that I’m playing too much DnD), but too much prep: i.e. – what is the optimal whether pattern to attack the beast? Is it best to attack on an empty stomach? Only serves to bog you down and ensure that you never get out of the gate to slay that beast…
“They get caught up in tutorials…the perpetual tutorial doer rather than the project builder… What you’re going to learn…they only real way that you’re going to get good at software development is to actually build projects.” For example in the courses we offer (there it is), we teach the foundations first and foremost, some ‘projects’ afterwards: one or two or even three and then we teach you to get out there and get some work done because there is no better teacher than cold and indifferent ‘experience’.
“It’s all about the basics, if you have your basics, then everything else becomes ‘easy’; your level of production just shoots up. …If you really want to learn, don’t spend nearly as much time as the preppers spend prepping: just do it.”
Check out the VLOG for a way more detailed talk about prepping vs. doing and if you’re on the fence about it, please check out our foundations course, it’s worth the look, we promise you. -Enjoy!
Whether you’re learning CSS or anything in general: give your mind time to assimilate the lessons.
Learning anything can be hard, but learning CSS (which is not a particularly intuitive system) can be just plain daunting. What do you do when you feel like your brain is getting ‘fried’? Take a break, man!
“Learning something new is very much like exercising: lifting weights/working out. Anybody who does regular exercise knows that the rest period in exercising is just as important as the exercising itself.” For example, let’s say you do some heavy weight-lifting and the next day you’re sore…should you go on that same day and lift some more? Contrary to popular ‘bro’ opinion…NO, you should take that day for your body to rest and relax, so that when you go back to lifting, you’re refreshed and ready.
“The exact same thing applies when you’re learning CSS, …etc. You are literally tasking your brain in a physical way to learn, to acquire, to assimilate new knowledge. And because of that it’s going to reach a certain point where it needs a time to process this and assimilate it properly, so that means that you need to rest; so when you come to a point when you just can’t, it can’t sink in anymore: where the information is just becoming more difficult -your brain seems to be resisting the acquisition of new information (it’s becoming strained!) – at that moment, it’s your brain saying, ‘okay, we’ve trained enough, it’s time to take a break to assimilate.”
Check out the VLOG for a very understanding and meaningful deep dive into this subject. Don’t beat yourself up over how long it’s taking to learn either. That will not matter once you’ve attained your goal, and no one out there in the real world cares how long it took for you to learn something – they just want to take advantage of your knowledge. <Shameless Promo> Our courses, whether it’s the freelancing course or the web stack, or any of them are designed in a way that takes advantage of the fact that you’re learning at your own pace. So no worries, take your time, do it right and be good to yourself. -Enjoy!
We make fun of Ruby a lot here: 1. because it’s fun and 2. … …okay, it’s just fun really, but a question did come up recently from an individual who was offered a job working with Ruby on Rails. They come from a PHP – Laravel background and while they don’t know how to use Ruby, per se, their potential employer also offered to pay them while they learn it. So the question was do they take the job knowing that the use of Ruby on Rails has diminished or should they look for something else?
Now Ruby aside, we’d like to answer this question in general terms if you ever find yourself in a situation like this and you’re on the fence… “If you don’t have other work and the job is high paying, why not? …A language or framework does not define you as a programmer… you [just] happen to be using those tools at that particular time”. Now, specifically regarding Ruby jobs: “…it’s not gonna disappear over night and in fact we’ll probably see Ruby development for the next five years, at least, so …you do that for one year, two years, 3 years; what have you…”
Another question we’ve been getting recently is if Java is dead? With Google making the switch to Kotlin for app development and Oracle charging for Java licensing, what will be happening to Java jobs? “Does that mean the whole Java-Android development is going to collapse overnight? Probably not: it won’t, it’ll probably take a couple of years.” That being said, “if you’re writing code for your android app using Java, you’ll be able to transition into Kotlin very, very quickly.”
Check out the VLOG for a more sensible and detailed answers to these questions, and remember, “you cannot lose learning any programming language.” -Enjoy!