Just recently, I moved this very blog from using Wordpress hosted on a Digital Ocean droplet, to using Hugo hosted on AWS. I figured I’d share that process and kind of the thoughts behind the move. My goal is also to document some of this process in some future posts. This will just be an overview of my thought process of the move and how my writing process has changed.
As the web transitions to ES6, developers will need to break their habit of using var . The toolbox now contains const and let , which should replace var in all instances. Now that that s out there, the real question now is which to use when? TL,DR: always use const , unless it s a native value (number, string, null, etc.) that could change, then use let .
ES6 is here and the recent versions of Node (> 4.0) have integrated some new features. There s no need for using a transpiler since it s built into the language now, horray! These features don t require a rewrite of code, just keep these in mind when starting the next Node app. Here s a breakdown of a few Node ES6 features that are available today.
A while ago I wrote an article about using ESLint . Which for my money, does a better job of not only checking for syntax errors, but enforcing a style guide. So I figured I would write a quick complementary guide for ESLint using Gulp. If you re not familiar with ESLint, it s JSHint on steroids. It s extremely flexible, provides the most rules out of any linter, and has support for JSX. Which…
I know for the past two months I ve been somewhat neglecting my blog (plus my newsletter, but more on that later) but I figured it was time to give a life update. It was not without reason though. I ve recently had a big change in my life in that, I ve left the government life behind and traded it for joining Pure Chat , an early stage startup. If anyone has known me, you ll know that joining a…
In a recent project, actually still in-progress project, I needed a small JavaScript router that would fit the following requirements: Be Tiny Allow bookmarking of sub views Assume jQuery as the only available library I poked around the interwebs, and used Microjs to see if one of them fits what I m looking for. None quite did, so I did what any other developer usually does, wrote one myself!…
Holidays are in full swing. Peppermint lattes, last minute shopping, and being with family is on everyone s mind. If you re traveling, or staying home, hopefully I can give you the gift of good JavaScript reading. Let s get to the links. Ten Real-life JavaScript Interview Questions This post and discussion is a must if you re looking for a job doing JavaScript development. I would recommend to…
I wanted to quickly talk about a new NPM module I published not to long ago, jshint-md-reporter . As you could figure out from the name, it will give you JSHint markdown reports. After a quick search, I saw that there wasn t a reporter already made. I found one that would generate an HTML page in Bootstrap so I stole that same concept, and modified it to generate markdown.
If you celebrated Halloween, hopefully it was a great time. Halloween marks the coming of the holiday season so be ready, it comes up fast. Also, I apologize for this coming out later than usual. After enjoying my birthday, then Halloween, things got put on hold for a bit. Not anymore though, so enjoy more JavaScript goodness. No real theme to these this time around, just some things worth…
In all web development, you run into a bug that s specific to a browser/version, and defies common sense. At least common sense in the way web development can make sense sometimes. The past day or two, I have been debugging an issue that had me ready to pull my hair out. It s specific to IE9 (or the new IE6), and file inputs not being sent to the server through a form POST.
On my always be learning . React has been the library in the forefront of everyone s mind recently. The fact that it was focused on doing one thing extremely well, is appealing to me. Angular is great for building complete apps, but you are committing 100% to that ecosystem for all pieces. React does the V in MVC and that s it. Since React uses jsx, a transpile step is somewhat required (although…
Here are my top reads for the month of September 2015. With the recent release of Node v4, a slew of new ES6 language features are available to Node developers. Although not all of them have been implemented fully, most of the key features are there for us to use. This issue will focus on ES6 and give you some primer on moving into the future of JavaScript development.
As I write this, my wife is in Portland on a business trip. I obviously miss her, but with my week of bachelor life, I ve used it to start a journey into React. As into JavaScript development as I am, I ve seen React all over the place. I just never had a good opportunity to get into the nitty-gritty of it and see how it compares to Angular (although they are not exactly Apples to Apples).
With the recent release of new JavaScript spec , ES6 arrow functions will start to show up more and more in JavaScript code. If you aren t familiar, arrow functions are just a way to define a function without needing the function keyword. Although it may just look like syntactic sugar, similar to how the new class keyword is, it does cause the function to behave slightly different. If you aren t…
Here are my top reads for the month of August 2015. This month I wanted to change it up a bit, take a step back from the developer side of things. Recently, I ve been trying to sort out the direction I want to head, goals I want to accomplish. As a side-effect of that, I m trying to simplify my life and focus on what I feel is important. I want to share some recent articles that have aided me in…
I stumbled upon this article the other day and felt that it was way off base. Though short, the writer makes some pretty bold assumptions on JavaScript development. Though it does mention the beautiful, intuitive syntax which gave me a slight smirk. I wanted to put together somewhat of a rebuttal and defend JavaScript as to why it is the ways the writer says it is. And to show that JavaScript…
The internet is swarming with fellow developers sharing a number of things, my blog included. This can lead to information overload and not really know what to read and/or follow. Filtering that can be a daunting task and hopefully I can give you a place to start. I follow a fair number of blogs and that list has grown and shrunk over time. Instead of bombarding you with the full list, I wanted to…
With the explosion of Node, there are many developers diving into it for the first time. As everyone knows who has developed with Node for some time, there are a few concepts and gotchas that can cause some headaches. Hopefully these will help with some of those problems.
I wanted to give an update on the newsletter I started a few weeks ago, Node Digest. I mentioned before that people could start signing up by sending an email, this is no more. New members can sign up via the shiny, new Node Digest website ! I ve also sent out a first issue to the early subscribers. To be honest, it was a surprisingly scary to send it out. Writing posts here is always easy for me.…
Functional Programming. You ve probably heard of it, lots of developers don t know what it is. It s programming with functions right? Lately, I ve been doing some research on it and how I can use some of those concepts in some of my everyday coding. Although the concept may seem foreign in comparison to normal object-oriented programming, the fundamentals can be mixed in for cleaner code. I know I…
I m proud to announce the creation of my first newsletter, Node Digest ! This is something I ve been wanting to get off the ground for a while. I m excited to get it out and to share all that I can on server-side JavaScript. The primary focus, as in the name, is going to be on Node.js, or more generally, server-side JavaScript. Node is the new hotness in the development world and any knowledge…
Most of these tricks, build systems will do for you, so this isn t something to be worried about during development. But if for whatever reason, you don t have a build process, or you re doing a programming problem, here s some tricks to save even more space.
I d like to say that I m a good learner. I haven t always been able to say that, especially in school sometimes. That has changed over time as I ve gone through my career as a software developer. This field is moving at a frantic pace and if you don t keep up, you ll wake up one day and know nothing. How does anyone keep up with it? The secret is self-education.
Unit testing is becoming a norm for developers and ASP.NET is no different. Although TDD is baked into Ruby on Rails, and some JavaScript frameworks for quite some time now, ASP.NET testing is a new thing for some people. I ve recently started a new web project that has a testing setup that has grown into something that s worth sharing. I ve expressed my struggles with TDD in the past, but I…
Widgets are the basis on which a vast majority of the Dojo Toolkit is based on. If you re not familiar with Dojo, I would suggest just checking it out then coming back to this post. It s probably overkill in what it provides for most web apps, but if you re looking for all-in-one solution, Dojo brings quite a bit to the table. As I ve mentioned ESRI JavaScript API to create maps in the browser.…
Now that we are into the New Year, I m starting back up my Top Reads posts. I m going to continue with giving some context on the things I share rather than just providing a link. Let me know which method you would prefer. Here are the top reads of articles, libraries, and websites that I found cool or useful for the past month. Enjoy!
Stop using console.log in your Node.js code! If you re like me, you did JavaScript development in context of the browser before moving over to the server. Using the console object for debugging is perfectly acceptable. What most new Node developers not realize, is that Node comes with its own debugger that is extremely helpful but not that straightforward to use. What I hope to do is to give a…
We ve reached the second half of this beginner Node.js series. Hopefully at this point, you re becoming more comfortable with Node, NPM, and pulling in packages. This post starts to get into the meat and potatoes of writing apps using nothing but JavaScript. I m not going to tell you how you should write apps, but give you some tips and common troubles of architecting an app. I want to start…
I ve started wrap up on a substantial, digest already in progress errors on one of the views. Although I ve taken steps to try and get around those issues, I haven t been able to pinpoint how the user is causing those errors. I began trying to devise a way to track a user as they interact with the application, then use this information to help debug the errors. After poking around the internet, I…
This time around I m going to try and give a bit more context on each of things I want to share. I figured you guys would appreciate that more than just a list of links. I read and find quite a bit that I want other people to be aware of as well. Here are the top reads of articles, libraries, and websites that I found cool or useful for the past month. Enjoy!
In the third installment of my beginner Node.js series, we will discuss the Node Package Manager , or NPM for short. If you missed the first two parts, make sure to go back and give them a quick read ( part 1 , part 2 ). If you are familiar with other languages like Ruby or .Net, they come with a form of pulling in contained functionality through package managers. Ruby has its gems, .Net has…
If you ve spent any amount of time being a developer, I m sure you ve heard of TDD , or Test-Driven Development. The point of TDD is that you write a failing test first, write the code to make the test pass, refactor the code, and then repeat. All programming languages can follow this pattern to create well-constructed code. It also allows you to do more refactoring down the road and make sure…
This is the second post in my beginner Node.js series. If you missed part 1 , make sure to go back and check it out as this will continue to build on that. In Part 1, I briefly explained what Node.js is and showed how to get it installed on the 3 major operating systems, Windows, OSX, and Ubuntu. In Part 2, I want to focus more on what Node.js is and what concepts one would need to understand in…
After finishing up two long projects, my next endeavor was to create an app for the local airport. They were looking for an app that was fast, small, and would update in real time. Doing a lot of reading on Angular.js recently, I figured it would be a good fit for this project due to the small nature of the app. After doing a few months of development, I wanted to share some of the awesome, and…
This is the first in a multi-part series I ve been wanting to do on beginner Node.js. JavaScript was a language I found interesting. The concepts of callbacks, functions having methods and properties, and a native data store in JSON, were things that set it apart from other languages. There s been lots of buzz on not just Node.js, but JavaScript as a whole. I m sure you ve seen the numerous new…
JavaScript is still a mystery to a lot of people. With it s growing popularity with things like jQuery , people are wanting to know more and more about the language. With more beginners jumping in, there s room to make mistakes that JavaScript will more than willing let you do. This list is composed of mistakes that I see people make that don t quite grasp some of the more complicated aspects of…
I just had the experience of getting a local Git repository setup on a Windows Server. Since this is something that I know I ll probably do in the future, I wanted to document my steps here, not only for myself, but for anyone else that doesn t really know where to start on getting that up and running. I ll assume you have some basic knowledge of Git, what it is and how it works.
A JavaScript task runner has become a main stay for almost any new project I start. Some people think that runners like Node.js projects, but any project can benefit from a simple task runner. I ve started using Gulp to do tasks in .Net projects and Go projects I ve been toying around with. When it comes to building CSS and JavaScript, specifically, it’s bliss.
A tree view is a fairly common UI component. There were lots of implementations of it that I found that relied on Angular, jQuery, or even Dojo. They all were good solutions, but felt heavy for what I wanted them to do. I just wanted a simple tree view without all the bells and whistles that many of them tacked on. I decided to write my own JavaScript tree view. Meaning that it can be used with…
I ve been wanting to start this for a while. These will just be a collection of various posts, libraries, or projects that find interesting throughout the month to form a Top Reads summary. Some of them I ll share over Twitter, or bookmark for myself later. Figured it would be nice to share these with you guys as well in one central place. Enjoy.
In a project I ve been working on, I needed a way to be able to test Windows authentication to an ASP MVC app. Having that authentication rest at the controller level made sense, but from a testing perspective it made things somewhat difficult. One aspect that wasn t clear to me was mocking the _HttpContext_ on the controller that controls the authentication checks. Especially since getting that…
This is the third post in a series of posts regarding the ESRI JavaScript API and creating maps on the web. The second one was on how to draw a single point on the map. In this post, I ll go a little more in depth on displaying some useful data on the map because that s what makes maps useful.
I m working on a web side project using Express.js. If you re not familiar with either of those things, I ve linked to both of their homepages. Express.js isn t a requirement for what I ll be talking about here, but having a working knowledge of Node.js would be helpful. Gulp & Grunt Grunt are both task runners based on Node.js. I won t go into the nitty-gritty on what can be accomplished with…
In working on a JavaScript API at work, I made this little snippet for adding a find method to JavaScript arrays. Since latest APIs are including a forEach and a filter, a find made sense but wasn t there which baffles me. More than anything, I m putting this here so I can find it later. 😛 Here it is, short and sweet: if (typeof Array.prototype.find !== 'function') { Array.prototype.find =…