Sunday, October 25, 2015

El Capitan is good

I upgraded to OS X El Capitan. So far, I am very pleased.

The first noticeable improvement is that my laptop, Macbook Air 13-inch, Mid 2012, works much better with DisplayLink. I am currently using two external monitors, Dell U2410, at 1900 x 1200 resolution each with the laptop in clamshell (closed) mode. I can see that the screen has been turned off completely. In previous OS X versions, the laptop had to remain open and 1 of the external monitors would eventually just stop getting a signal after some time. I have only seen consistent good behavior.

The second noticeable improvement is something I might just be imagining. I think the amount of free disk space that I have has gone up by a few GB. Usually upgrades mean more disk space consumed, but I don't think that happened to me. Maybe I don't remember exactly how much disk space I had used before, and this is flat out wrong. In any case, the disk space consumption hasn't gone up noticeably, so that's good.

I have been a bit underwhelmed by the 'snapping' features for window management. It requires use of a mouse and clicking on the little green icon on top of a window. I'd rather have some keyboard shortcuts that do it for me. For now, I'll stick to using Spectacle.

I have not noticed any negative have only noticed improvements.

Friday, October 23, 2015

Free Time

The weekend is approaching, and fortunately, I don't have any major obligations. So, I've started to think about what I'd like to do.

Outside of coding, I'd like to go for a run on one day and go to the gym on the other day. I also have to put together a desk, and do some other household chores. I'm looking forward to doing all of these, because it'll make me feel great when they're all done.

But that still leaves me a good deal of time to do some coding.

This week I have been completely humbled. I saw some demos of other people's projects at work, and they were doing some amazing things. I also was browsing some electron based projects, and these were mind-blowingly cool as well. Seeing these projects initially brought me down. What's the point in starting a project that won't ever be as good as the ones that other people are doing? I won't ever create something that someone else hasn't already done better than me.

But, there's no point in wallowing in that sort of pity party for long. I think it's better to use those as inspiration to keep working.

I think the key is to not think too much. If I think too much, I get some type of paralysis, and I never get started on building something. This weekend, I'll try to do a mini sprint or mini solo hackathon where I force myself to build something. When it's all said and done, it may be throw-away code or it might be a building block to something bigger or it may be the inspiration for the next project. In the end, I know I will create something, which is better than just thinking about it.

Thursday, October 8, 2015

Trying out Electron

I haven't tried out using a new language or tool in a while. I also have a new application in my mind that I'd like to build. So, I thought it might be cool to try out out this thing called electron.

What is Electron? It is a way to write desktop applications using webby languages (like html and javascript). But wait, there's more. You also get access to API's to the native operating system. And supposedly, those API's work in different environments, so you might be able to get the holy grail of writing once and then running everwhere...

So, let's give it a look. You start by asking node package manager to install electron.

npm install electron-prebuilt -g

When I tried this, I got some warnings about having an old version of node. It's been a very long time since I've used node, so that wasn't surprising. So, I uninstalled electron

npm uninstall electron-prebuilt -g

and then hit the keys to update node.

npm cache clean -f 
npm install -g n
sudo n stable

I brought myself up to node-v4.0.0. Then I ran the install for electron again, and it completed with no warnings.

I followed the quick start guide to build a simple hello world application.

Some initial impressions:

  • This hello world app was simple and readable, as they all should be.
  • The whole stack feels thin and light. In contrast, I remember trying the MEAN framework out and finding it be ridiculously heavy. There were tons of files, it took up a whole lot of space, and there were lots of abstractions. That framework felt so heavy to me. This one just feels so much nicer.
  • This hello world getting started app doesn't really do much at all. I'm excited to get something going that does just a bit more.

It was a good start, and I'm excited to continue working with Electron.