Groundhog Day Resolutions - July 2020

June ended up being quite a busy month for work and went far faster than I had anticipated.

June's Primary Goals

1. Release version 0.2 of The Book

I released two new chapters and added a little polish to the existing ones. I would have liked to have written more, but I'm still fairly happy with how things turned out.

2. Keep running

Motivation for running has been at an all time low. It's hot and humid outside so I need to run before the sun comes up. I've managed it a few times, but my legs were stiff and the whole thing was thoroughly unpleasant.

3. Release version 1.2 of beeminder.el

I didn't even touch this during the month. It probably only needs a couple of hours to finish off, but I didn't make the time.

4. Complete one of my "other goals"

I finally settled on zetteldeft to manage my notes. I've been trying out a couple of other services and systems, but zetteldeft fits my setup nicely. I'd like to write more about this in the future, especially the tweaks I've made and how I take notes now.

Primary Goals for July

1. Release version 0.3 of The Book

I really want to get the section on syntax checkers completed by August. If time (and energy) permits, I'd also like to get the section on using lsp-mode published. lsp-mode is something I've only been using the last 6 months or so months, but it's made a huge different to my productivity and I'd like others to benefit from it.

2. Run some more

My weekly miles are going to start increasing now that July is here, so I need to keep on top of things before August arrives. October isn't that far away when it comes to improving my running.

3. Release version 1.2 of beeminder.el

If at first you don't succeed…

Secondary goals for July

1. Complete another "other goal"

Maybe I'll try the art thing again.

2. Create a short screencast

I have a couple of topics in mind that I'd like to record a screencast for. It will probably be Emacs or productivity related, so don't get too excited.

Recording a screencast is something I've thought about doing for a while, but never really felt motivated enough to do. Last week I gave an absolutely disastrous presentation which made me realize my public speaking skills have completely atrophied. I'd like to fix that.


My 2020 development setup

I was recently looking through some old projects and found a screenshot of my development environment from 2006:

Development screen from 2006

That's a lot of green.

The language is BlitzPlus, and the editor is Protean IDE (a custom Blitz IDE that is no longer available).

I think it's interesting to look over old screenshots like this to see how my work environment has changed (and how it's stayed the same).

Here's a shot I took during some work on beeminder.el version 1.2 this week.

Developing the beeminder.el package

One thing that stood out to me is how much visual clutter was in the old screenshot. I've removed as many toolbars and menus as possible, and try to stick to keyboard shortcuts where possible.

Current setup

I'm currently using Emacs 26.3 with the doom-nord theme. The status bar at the bottom uses doom-modeline with some slight tweaks. Font is Ubuntu Mono.

For work projects I use php-mode and web-mode. Recently I've started using lsp-mode with intelephense to add better auto-completion and documentation tooltips (which is something I'll be writing about in my book, "Developing PHP with Emacs").

I use magit for working with git repositories which has been a huge boost for efficiency. For navigating projects I use projectile with projectile-helm; they make jumping from one project to another extremely quick, which is helpful when I'm switching between client projects during the day. For project planning I use org-mode.

I'd say 80% of my professional work these days is done from within Emacs. I still use external applications like browsers and database tools, but any source code editing is done from within Emacs.

Eventually I'd like to get more comfortable using some other Emacs features like tramp (for editing files on remote servers) and EmacSQL for working with databases.

I still develop hobby projects in Blitz (using BlitzMax), although I've changed my setup a couple of times. I ended up writing blitzmax-mode so that I could write code with Emacs, and I've built a bunch of other Blitz tools over the years.


Groundhog Day Resolutions - June 2020

May went okay.

May's Primary Goals

1. Read another book

I read "Mastering Software Technique: Conscious Practice for Writing Software". I've been writing software for a long time, but this book covered some ideas I'd never really thought about before.

Creating small test projects to throw away is definitely something I want to put into practice.

2. Make some art

I drew a few pencil sketches to get warmed up, but that's as far as I got.

Drawing was not as relaxing as I'd hoped.

3. Release the initial version of The book

The initial version of Writing PHP with Emacs is now available. I'd been holding back on publishing in order to get everything "just right", but that attitude defeats the purpose of leanpub. So I cut out everything I wasn't 100% happy with and then hit "publish".

Now the real work begins.

4. Run more

I ran a "stay away" 5K for charity at the end of the month. It wasn't my fastest, but it was top 3 for me which has given me a bit of a confidence boost.

I've also started training for a half marathon in October. Running in the summer heat is no fun.

Primary Goals for June

1. Release version 0.2 of The Book

I've published some minor updates, but by July 7th I want to complete the next major section. I've linked leanpub updates to a Beeminder goal to help keep me on track.

2. Keep running

My training plan for June is pretty light, but this time I'm adding in some pace runs which I've never done before.

3. Release version 1.2 of beeminder.el

It's been over six years since I released the first version of beeminder.el. For the past few weeks I've been working on adding a goal dashboard and details page. It needs some polish, but is otherwise finished, so I'd like to get it cleaned up and released this month.

4. Complete one of my "other goals"

I'm not sure which one yet, but we're nearly 50% through 2020 and I've only checked off a single goal.


Groundhog Day Resolutions - May 2020

April wasn't a complete disaster, but goal-wise it has been the worst month of the year for me.

April's Primary Goals

1. Make some art

I originally planned to create one or two sketches, but inspiration did not strike. It's been a long time since I drew anything, and I'm still hesitant to try again. I find it frustrating that the art in my head never matches what ends up on the paper.

2. Read something

I re-read "Personal Development for Smart People". It's still worth a read, although I would have liked some more practical tips.

3. Release Bee Button

Total failure here. I got things ready for release and then promptly ignored the project to do other stuff. Right now it's 80% complete, which means there's another 80% to go.

Primary Goals for May

1. Read another book

I bought "Mastering Software Technique: Conscious Practice for Writing Software" but haven't got around to reading it yet.

2. Make some art

For real this time.

3. Release the initial version of The Book

My original plan was to release everything last week, but the more I read through the book the more I disliked it. I know trying to get things perfect before release is a terrible idea, but I insist on doing it anyway.

My new plan is to release a chapter in the next week or so. After that I'll release updates at least twice a month. I'll be Beeminding the release process for good measure.

4. Run more

I ran over 100 miles in February. My total for April was less than 25% of that.

Local parks are closed due to COVID-19 restrictions, so I'm limited to running laps around my street. It works in small doses, but running 4 times a week around the same 600 yards of scenery gets old fast.

It looks like restrictions will be lifting in my area this month, so for May I'd like to get back to running more often. I don't particularly enjoy running, but it's good exercise and it gets me outside and away from the computer screen.


Writing PHP with Emacs - The Book

One of my goals for 2019 was to write a small book. That book now has a name: "Writing PHP with Emacs".

Book Cover for "Writing PHP with Emacs"

Emacs has been my primary editor for over a decade. I've used it to build all kinds of projects, and the majority of my work involves building or maintaining PHP applications. Over the years I've learned a lot about tuning Emacs into an editor that works for me. This book contains that knowledge (the useful parts anyway).

The first version will be released via Leanpub on April 30th, 2020. All updates will be free of charge after the initial purchase.