Josh On Design

  • Blog
  • About Josh
  • Books & Writing
  • Apps & Projects
  • Hire Me
past future

    Ideal OS: An Epic Tale of Irrationality

    January 8th, 2015

    Note: Parts II and III are up now.

    Read more...

    Tagged: os design idealos

    Getting Started with NodeJS and Thrust

    December 16th, 2014

    I’ve used a lot of cross platform desktop toolkits over the years. I’ve even built some when I worked on Swing and JavaFX at Sun, and I continue development of Amino, an OpenGL toolkit for JavaScript. I know far more about toolkits than I wish. You would think the hardest part of making a good toolkit is the graphics or the widgets or the API. Nope. It’s deployment. Client side Java failed because of deployment. How to actually get the code running on the end user’s computer 100% reliably, no matter what system they have. Deployment on desktop is hard. Perhaps some web technology can help.

    Read more...

    Tagged: node webkit thrust

    Beautiful Lego 2: Dark

    December 13th, 2014

    The follow up to last year’s Beautiful Lego, Mike Doyle brings us back for more of the best Lego models from around the world. This time the theme is Dark. As the book explains it: “destructive objects, like warships and mecha, and dangerous and creepy animals… dark fantasies of dragons and zombies and spooks” I like the concept of a theme as it helps focus the book. The theme of Dark was stretched a bit to include banks and cigarettes, and vocaloids (mechanical japanese pop-stars), but it’s still 300+ gorgeous pages of the world’s best Lego art. Beautiful Lego 2 is filled to the brim with Zerg like insect hordes, a lot of Krakens, and some of the cutest mechs you’ve ever seen.

    Read more...

    Tagged: bookreview lego

    Amino: Now with 33% less C++

    November 18th, 2014

    My hatred of C and C++ is world renown, or at least it should be. It's not that I hate the languages themselves, but the ancient build chain. A hack of compilers and #defines that have to be modified for every platform. Oh, and segfaults and memory leaks. The usual. Unfortunately, if you want to write fast graphics code you're pretty much going to be stuck with C or C++, and that's where Amino comes in.

    Read more...

    Tagged: amino nodejs

    Thoughts on APL and Program Notation

    October 23rd, 2014

    A post about Arthur Whitney and kOS made the rounds a few days ago. It concerns a text editor Arthur made with four lines of K code, and a complete operating system he’s working on. These were all built in K, a vector oriented programming language derived from APL. This reminded me that I really need to look at APL after all of the language ranting I’ve done recently.

    Read more...

    Tagged: programming apl typography

    Electron 0.4 beta 3

    October 20th, 2014

    I am unhappy to announce the release of Electron 0.4 beta 3.

    Read more...

    Tagged: electron arduino nodejs

    Photon, a commandline shell in less than 300 lines of JavaScript

    October 15th, 2014

    I have a problem. Sometimes I get something into my head and it sticks there, taunting me, until I do something about it. Much like the stupid song stuck in your brain, you must play the song to be released from it's grasp. So it is with software.

    Read more...

    Tagged: nodejs javascript programming

    Typographic Programming Wrapup

    October 6th, 2014

    I need to move on to other projects so I’m wrapping up the rest of my ideas in this blog. Gotta get it outta my brainz first.

    Read more...

    Tagged: fonts programming

    How Microsoft can fix Windows. They have the Technology.

    September 30th, 2014

    Note: I’m a research at Nokia but this blog does not represent my employer. I didn’t move to Microsoft and I’ve never been on the Windows Phone team. These ill considered opinions are my own.

    Read more...

    Tagged: rant microsoft

    60sec Review: Rust Language

    September 17th, 2014

    Lately I've been digging into Rust, a new programming language sponsored by Mozilla. They recently rewrote their docs and announced a roadmap to 1.0 by the end of the year, so now is a good time to take a look at it. I went through the new Language Guide last night then wrote a small ray tracer to test it out.

    Read more...

    Tagged: programming bookreview

    Improving Regular Expressions with Typography

    September 15th, 2014

    After the more abstract talk I’d like to come back to something concrete. Regular Expressions, or regex, are powerful but often inscrutable. Today let’s see how we could make them easier to use through typography and visualization without diminishing that power.

    Read more...

    Tagged: programming fonts

    Paper and the Cybernetically Enhanced Programmer

    September 10th, 2014

    So far my posts on Typographic Programming have covered font choices and formatting. Different ways of rendering the source code itself. I haven’t covered the spacing of the code yet, or more specifically: indentation. Or even more specifically: tabs vs spaces.

    Read more...

    Tagged: programming

    Tabs vs Spaces, the Pointless War

    September 2nd, 2014

    So far my posts on Typographic Programming have covered font choices and formatting. Different ways of rendering the source code itself. I haven’t covered the spacing of the code yet, or more specifically: indentation. Or even more specifically: tabs vs spaces.

    Read more...

    Tagged: fonts programming

    Typographic Programming: Fonts

    August 25th, 2014

    Apparently my last post hit HackerNews and I didn’t know it. That’s what I get for not checking my server logs.

    Read more...

    Tagged: programming fonts

    Typographic Programming Language

    August 22nd, 2014

    Allow me to present a simple thought experiment. Suppose we didn’t need to store our code as ASCII text on disk. Could we change the way we write – and more importantly read – symbolic code? Let’s assume we have a magic code editor which can read, edit, and write anything we can imagine. Furthermore, assume we have a magic compiler which can work with the same. What would the ideal code look like?

    Read more...

    Tagged: programming fonts

    Building a Headline Viewer with Amino

    August 19th, 2014

    This is part 3 of a series on Amino, a JavaScript graphics library for OpenGL on the Raspberry PI. You can also read part 1 and part 2.

    Read more...

    Tagged: amino nodejs

    Photo Slideshow in Amino

    August 11th, 2014

    This is the second blog in a series about Amino, a Javascript OpenGL library for the Raspberry Pi. The first post is here.

    Read more...

    Tagged: amino nodejs

    Amino: Refactored

    August 8th, 2014

    I’ve been working on Amino, my graphics library, for several years now. I’ve ported it from pure Java to JavaScript, to a complex custom-language generator system (I was really into code-gen two years ago), and back to JS. It has accreted features and bloat. And yet, through all that time, even with blog posts and the goamino.org website, I don’t think anyone but me has ever used it. I had accepted this fact and continued tweaking it to meet my personal needs; satisfied that I was creating something that lets me build other useful things. Until earlier this year.

    Read more...

    Tagged: amino nodejs

    Electron 0.3 Released

    August 6th, 2014

    I’m happy to announce the release of Electron 0.3. While there are a few under the hood improvements, the big news is a *brand new user interface*. We’ve rewritten the UI from scratch using Angular JS. This will make Electron more stable and easier to improve in the future.

    Read more...

    Tagged: electron arduino

    60s Book Review: TinkerCad

    August 4th, 2014

    TinkerCad is a free web based CAD program. It runs entirely in the browser using WebGL, so you’ll probably want to use it with Chrome (I think Safari may work in Yosemite+). TinkerCad is meant for novice CAD users. So novice that you can know absolutely nothing about CAD and be able to make something after five minutes of their built in learning quests (tutorials). Then you an save your creation to their cloud or download it for 3D printing.

    Read more...

    Tagged: bookreview cad

past future
Like this? Hire Me!