Stuff I'm Up To

Technical Ramblings

Node.js & Databases — December 26, 2016
Updating Newznab — December 23, 2016

Updating Newznab

Newznab is a Usenet indexing server. It’s a very powerful spider that grabs details of all kinds of Usenet posts in the groups you’re interested in. It then indexes and stores them as NZB files so you can download complete releases.

I’ve found that running it helps me find books as not many out there seem to interested in indexing the book groups. It’s probably not of much interest to you unless you’re also looking to index content that isn’t common place. Most indexers out there cover Music, TV and Movies – so you’ll probably find little use for it.

As I don’t actually run it that often, because it’s not everyday I’m looking for a book. Updating it periodically is something I often forget how to do properly.

$ cd /var/www/newznab
$ svn update .
$ cd misc/update_scripts
$ php ./update_database_version.php
Integrating React with Gulp — December 22, 2016
Webpack, ReactJS and SASS — December 21, 2016
Airbnb JavaScript Style Guide —
Making Sense of React & Webpack — December 20, 2016

Making Sense of React & Webpack

So I came across React and thought it looked pretty cool. But it made my head hurt trying to figure it out. Everything seems so difficult to start with. I just couldn’t understand how you’d write a JSX file and still somehow the browser would be able to execute it.

I had to eventually think back about how CoffeeScript works. The browser doesn’t execute a JSX file. It needs to be “transpiled” into JavaScript in much the same way as CoffeeScript is “transpiled” into JavaScript. It’s just the tools to do it are all freakishly new to me and that’s what I had to get my head around.

Continue reading

React JS — December 16, 2016
ES6 vs CoffeeScript — December 15, 2016

ES6 vs CoffeeScript

ECMAScript is the underlying standard that JavaScript is built to. My main exposure has been with ES5 as supported by “corporate” modern browsers. However, the more modern browsers now support ES6. ES6 brings a lot of changes to the party and many are arguing that it’s making the need for CoffeeScript diminish significantly.

Just typical. I discover something that I find useful and it starts to become redundant – or does it?

Continue reading

Mozilla JavaScript —

Mozilla JavaScript

JavaScript (JS) is a lightweight, interpreted, programming language with first-class functions. While it is most well-known as the scripting language for Web pages, many non-browser environments also use it, such as node.js and Apache CouchDB. JS is a prototype-based, multi-paradigm, dynamic scripting language, supporting object-oriented, imperative, and declarative (e.g. functional programming) styles. Read more about JavaScript.

Iced CoffeeScript —
Atom & Lint — December 14, 2016

Atom & Lint

I’ve been using Atom for a little while now and have to say I find it a lot quicker than Brackets. It has the occasional moment when loading a large script file and it tries hard to parse it and colourise it that causes it to hang for an age, but mostly it performs really well for me.

One of the excellent features I find useful is the integration with Git. I can easily see what line of a script I’ve changed, added or deleted.

The next feature I added was lint. Lint allows Atom to validate the script you’re writing meets guidance for it’s structure. There are several lint plug-ins you can use, but the one I’m using mostly is coffee-lint. This lints my CoffeeScript and reports if I’m failing outside of the guide lines for the document structure. eg. a trailing space on a line, a line length longer than 80 characters or an indentation issue.

It all helps to keep your code clean and consistent and in theory readable by anyone else.

Continue reading

Github — December 12, 2016


I’ve had a few little dealings with Github in the past as a contributor, but thought as I’m working on a project that borrows from a lot of code that is “sociably” hosted on Github by many Open Source developers, I thought I’d take the opportunity to put something back.

So what is Github?

It’s a location for Gits! So more importantly what is Git? Git is a version control mechanism that allows you to manage and maintain a folder structure, recording and monitoring changes as you develop. So Github is an online repository to publish your Gits.

Once published the whole world can see your code and your changes. Not only that they can clone your work, make changes and submit the changes back to you for inclusion in your project.

Continue reading