Appendix B. Tools and Resources

This is a list of the hardware, software, and services I used when assembling this book. I found all these tools useful and encourage you to check them out.

Hardware

Shuttle Cube PC

My home-office workstation is a Shuttle Cube PC with Intel Core i5 Processor, 8 GB RAM, 1 TB disk space, and a dual monitor (Dell Ultrasharp 21”) setup running XUbuntu 14.4.

Lenovo Carbon Laptop

When I was on the road, I usually brought along a Lenovo X1 Carbon with Intel Core i5 processor, 4 GB RAM, 128 GB SSD, and a 14” monitor running Windows 8.1 OS.

Google Pixel

Occasionally I carry a Google Chromebook Pixel Netbook with me. It has Intel Core i5, 8 GB RAM, 32 GB storage, and a 13” touchscreen.

Drawing tools

For this book project, I made a habit of drawing diagrams and flow charts to help me better visualize the ideas in the book. Most of the time I used a simple setup of 3” × 5” unlined note cards and Sharpie-brand Fine Point and Ultra Fine Point pens and then scanned those into the computer. I also occasionally used the LiveScribe3 Smartpen and paper to sketch out my ideas and automatically transfer them to the computer for editing and sharing.

Software

gedit

I edited most of this book using a locally installed copy of gedit. I like gedit because it is a very simple editor and is available on a wide range of OS platforms. I used it both to write the code and the text for the book.

Caret and Caret-T

Thomas Wilburn’s Caret and the related fork Caret-T editors for Chrome browser and Chrome OS came in handy when I was away from my workstation and needed an easy way to quickly update pages and commit them to the repo.

AsciiDoc

My “go to” format for writing is AsciiDoc. It’s my favorite flavor of the Markdown family of languages and—lucky for me—is one of the supported formats for O’Reilly’s Atlas publishing system (see “Services”).

Node.js

I used Node.js as the runtime platform for most all the code in this book. It’s fast, simple, reliable, and was available on every OS I used when working on the book.

node-inspector

I usually just rely on alert-debugging by writing console.log() all over any of my source code that happens to be “not working” at the moment. But when I get really serious about debugging, I use node-inspector.

Tidy

I use Tidy to review and format my HTML output. This is especially handy when generating HTML from code. When I am not using my own workstation or laptop, I use an online version of Tidy.

sirenlint

I used Kevin Swiber’s sirenlint CLI tool for validating Siren documents. Swiber designed the Siren media type and his tool is very helpful.

curl

I used the curl CLI utility to poke at my running API servers. It is especially handy for APIs that don’t return structured formats like HAL, Cj, or Siren.

Libraries

I tried to use as few external libraries as possible with this book. Even though it meant I needed to write a bit more code and, in some cases, the functionality of some apps is less than production-ready, I think the lack of dependencies makes the code easier to read, install, and support over time.

URI Template JS

I used the URI Template JS to handle RFC6570 URI templates. There are several good libraries out there and I like this one because it works easily as both a server-side NodeJS library and a client-side JavaScript component.

Semantic UI

I really like the Semantic UI CSS libraries. “Semantic is a development framework that helps create beautiful, responsive layouts using human-friendly HTML.” The libraries are easy to use and have a minimal impact on plain HTML layout while still offering consistently pleasing interface options. All the client-side examples rely on Semantic UI and I encourage you to look into using it.

Services

Atlas

The book was composed and built using O’Reilly Media’s Atlas platform. This Git-based, AWS-hosted service allowed me to edit, check in, and build my manuscript from anywhere I had an Internet connection—and I did that quite often!

GitHub

I used GitHub to host and manage the source code for this book.

Heroku

All the demo apps from this book were tested (and some are actively hosted) on Heroku’s Cloud Platform. I used Heroku Toolbelt for deployment.

Tidy

I used John Hendley’s HTML Tidy page to quickly check my generated HTML. While I have a command-line version of Tidy, sometimes I am not on my own machine and Hendley’s implementation is clean and easy to use.

Amazon Player

As you will notice if you check the header comments in my source code, I tend to write and code with music as my background. I relied upon Amazon’s Music Player to deliver my cloud-based media from a handful of devices as long as I had an Internet connection.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.15.145.109