Lessons from 7 self-taught coders who now work full time as software developers

How can you stay motivated while learning to code?  Studying web development is a path with many ups and downs. You might have one day where you figure out a tough problem and feel absolutely amazing. But then the very next day, you get stuck on a seemingly easy problem for hours. You end up feeling completely defeated. It’s often hard to see the light at the end of the tunnel. But when you’re in those tough, dark spots, try to find the motivation to hang in there.

Remind yourself of your ultimate goal in learning to code. Maybe it’s to get a better job, to provide for your family, or to find a more purposeful form of work.

These stories are not just for those trying to program for the first time.  These lessons also apply to the old-guard coders who need to update the skill set they have.  There is a different set of challenges when you are a .NET C# coder and you’re attempting to learn the JavaScript, Express, Node, Vue, Mongo, etc stack.  Simple things like async coding vs sync coding can drive you mad.  As you get better at the new skill you want to just drop your current gig and move on.  Do it gradually, this is a not a turn-the-switch moment.

Do a simple project for someone who needs it and is willing to work with you while you learn the issues your new skill. You may have to do the first one as a freebie to get some street cred as a developer.

Via: Lessons from 7 self-taught coders who now work full time as software developers

 

 

 

 

Welcome Gareth Stockdale from the BBC is the new @microbit_edu CEO micro:bit

Welcome Gareth Stockdale, new micro:bit CEO, from the BBC – The Micro:bit Educational Foundation has today announced that Gareth Stockdale will be joining the Foundation as CEO. Gareth joins from BBC Learning where he was joint lead for the original project that designed, developed and deployed the micro:bit to all year 7 or equivalent children…

I have a number of the micro:bit boards with some clever adapters from Adafruit.  This IS “the excellent platform” to start kids in learning about computers and programming.  Schools in the US are paranoid about soldering irons and the micro:bit helps by having large pads to use alligator clips.  A couple of AA batteries and a USB cable and your able to rock that code.  Even though the new federal budget makes it more difficult to contribute to any cause, I plan to help computer learning by donating to DonorsChoose.org.

My 10 yr old grandson will start with the Javascript Blocks editor, powered by MakeCode,  which is a clever drag and drop coding environment with the ability later to drill down into hardcore Javascript.  And as much as I am still in denial, Python is making a comeback and the micro:bit can go there too.

If you are so inclined to teach others the lesson plans include sample code, lecture material, whiteboard examples and teacher notes.  In the process of preparing to teach others, you might just learn something yourself.

via Welcome Gareth Stockdale from the BBC is the new @microbit_edu CEO @stockers1001 @BBC — Adafruit Industries – Makers, hackers, artists, designers and engineers!

Using MongoDB on Node.js Application Using Mongoose — DZone Web Dev Zone

Image result for mongoose image

Introduction In this post, we are going to see how we can use MongoDB in our Node.js application with the help of the package Mongoose. We will also be covering some facts about MongoDB so that, as a reader, you will understand why we have chosen MongoDB as our backend. We will be going through some steps…

JavaScript, Node, MongoDB, Mongoose is a developer stack that is very popular.  If you can’t stand up or access a Mongo Server you can use NeDB which allows you to use a simple flat file for your JSON data.  One of NeDB’s advantages is that it uses most of the Mongo command structure.  You could develop using NeDB and when your ready move over to Mongo.  Some app’s are small enough that you can just leave them on NeDB.

via Using MongoDB on Node.js Application Using Mongoose — DZone Web Dev Zone

I know how to Code, I can code in anything…. not

Every time I talk to a recent grad I hear a variation of the phrase, “I know how to code, I can code in anything.” This is, on the surface, true for some bits like boolean logic and loops. Where it starts to fail for me is when I need to leverage a language’s ecosystem.…

Same experience with me.  I know how to program in about 10 different languages. Some are lost languages like Etruscan and Cobol.  Recently I had to learn Ruby and I said how hard can that be?  It was hard.  One group of people we focused on JavaScript, Node and multiple JS libraries.  I said this is just a scripting language.  Yep, wrong again.  A few years ago I started using Arduino which used a C++ language.  I’ve programmed in C# they are almost the same.  Same like a bicycle is like a motorcycle.

I have learned to respect the learning curve on any new “Language”.  I appreciate the YouVideo and subscription to Udemy that I have.  It still takes time, more time than getting on a bicycle after 10 years.

I now know twelve languages and the last two took almost as much time as the first ten.

via I Know How to Code, I Can Code in Anything — DZone Web Dev Zone

Powershell + JavaScript + ConvertToHTML = Web Reports

powershell-hero-16-9-ratio.jpg

Some tips and tricks on how to use a combination of Powershell, JavaScript, and the ConvertToHTML Powerlet to get some nicely formatted web reports.  This article is in multiple parts and start with the first one or you will get totally lost.

I’m getting better at PowerShell and never thought to combine these things together.  The solution is pretty simple stuff but very creative.  This is a Maker project in my mind.

Via: Database Weekly

 

 

GraphQL an alternative method to develop REST API’s

Facebook may not be the favorite company of the open web community, for some good reasons. But when it comes to open source, most developers take advantage of their tools, libraries, and frameworks in one way or another. In particular, Javascript (Node.js) and PHP have advanced by leaps and bounds largely thanks to Facebook’s contributions. […]

GraphQL is an alternative method of developing API’s to can use traditional SQL databases and the “Exotic” (1)  noSQL databases.  Like everything new, there is a learning curve.  There is an excellent course on YouTube from Traversy Media that covers the basics to intermediate use of GraphQL

This library has support for JavaScript, PHP, React and many other environments.  It’s worth a look-see, you never know.

(1) In a meeting recently where the prospect said this.  Along with “noSQL is not a standard and is not considered secure.”

via GraphQL, the future of APIs — AltPlatform

Better tools for debugging Node.js

Debugging – the process of finding and fixing defects in software – can be a challenging task to do in all languages. Node.js is no exception. Luckily, the tooling for finding these issues improved a lot in the past period. Let’s take a look at what options you have to find and fix bugs in…

I am at the level with Node.JS that I no longer “Suck at it” but I am still learning every time I use it.  One of the areas I struggled with was debugging, which was much different and difficult than my .NET and PHP days.  It seems like open source meant that you were on your own for debugging.

Special thanks to Gergely for his article on just the topic of Node.js debugging.

pino.pngOne of the takeaways in the article is Pino is an extremely fast Node.js logger, inspired by bunyan. In many cases, pino is over 6x faster than alternatives like bunyan or winston
I had tried Winston as it was recommended by one of my programmer gods.  I was not worthy because I couldn’t understand it.  I have high hopes for Pino.

I use Microsoft VS Code editor as my editor and my IDE for almost everything including PowerShell, Bash, JavaScript, SQL, Node.js, ADCIIDoctor, and more.  I was glad to see a section in this article on how to better use MS Code with Node.js

via How to Debug Node.js with the Best Tools Available — RisingStack Engineering

Dashboards on the cheap, DIY with Gridster

Recently, I published an article on various JavaScript libraries for Dashboards. In this article, I am going to demonstrate how we can create a dashboard with drag-and-drop visuals and export it using JavaScript. I am going to use the Gridster library to create the dashboard. I have used this library in my projects and found it…

It takes a few libraries to create dashboards that look like

screen-shot-2017-04-02-at-20-21-09.png

Gridster.JS is a jQuery plugin that when combined with Chart.JS to create the charts and jsPDF to snapshot the page into a PDF file you can build a custom dashboard quickly.  If you have used Tableau or Microsofts Power BI and wondered, “Could I write something like this in code for a specific solution”, me thinks the answer is “Yes”.

via Dashboard: Drag and Drop Visuals and Export Using JavaScript Libraries — DZone Web Dev Zone

Backlogger web app released to Github, it’s a Scrum thing.

2017-03-07 12.30.08.jpg

“Backlog” is one of those SCRUMmy terms used to identify features or functions that have been dreamed up or discussed for an application.   You collect these ideas into a list which is called the “Backlog”.  Then this list is reviewed (Sprint Review) and the ideas are refined (Groomed) and an estimate of effort (Story Points) is assigned to it.  Then folks get together and discuss which ones should be done in the next timeframe (Sprint).  To collect these ideas some companies use an issue tracking system or an off the shelf ticket system (Atlassian JIRA) and others just use a spreadsheet… gasp.

Sometimes all you need is a simple web application that all the participants can use to enter any ANY of the ideas that came up.  Even things like “The buttons should be colored blue.”  I needed a simple project to help me learn some technologies that are new to me.  Hence the “Backlogger” was born.  The whiteboard above shows the original concept.

Technologies used in Backlogger

  • JavaScript
  • NodeJS
  • Bootstrap
  • Mongo without the headache, neDB
  • jsGrid

Design Requirements

The design requirements were meant to be simple as possible to make this project something that could be done quickly.  They also needed to be flexible to allow for better learning.

  • Single Page Application
  • Open Source
  • No user logins, just a password, we are a big happy family
  • Self-contained application, no need for outside services or servers
  • Mongo database and Mongo queries
  • Allow for a maintainable list of people names who contributed ideas to the backlog
  • Allow for a maintainable list of functional areas to help groups the ideas
  • One time entry of an idea, no editing,
  • The editing of an idea will be done during the grooming
  • Filters that help find ideas quickly
  • Ability to backup and wipe the database (Mongo Documents)
  • Simple report that can be printed directly

GeekMustHave would like to thank Phoenix Learning Labs for the resources and funding to do this project.  GeekMustHave would also like to thank the MDHHS-DWIP team for the testing and feedback.

Open source, common components

What does it look like?

2017-04-02_13-19-46

Backlogger is an Open Source project available on Github.

https://github.com/GeekMustHave/Backlogger

Future

I’ve used “Backlogger” in one project so far but others who have seen it have expressed some interest in it.  That’s another reason why it’s Open Source.

Depending on the feedback I might do additional updates.  Maybe I need a “Backlogger” for the “Backlogger”?