HN user

davidarkemp2

73 karma

[ my public key: https://keybase.io/davidarkemp; my proof: https://keybase.io/davidarkemp/sigs/j3R-cz6LW9FP4EOKaylJWm8pr9lhWBgQdu3vaNX7Vv8 ]

Posts0
Comments37
View on HN
No posts found.

That's a really nice article, thanks. And I can see how separating the validation logic from processing code is useful.

What's not clear to me is why you chose this approach over existing OOP techniques, such as GoF Adapter Pattern, or even just interface implementation (as Go looses a lot of the ceremony of Java/C#).

* Don't have high fat/sugar snacks in the house - but do have an alternative you'll eat * Move - low intensity exercise uses your body's stored energy (i.e fat) rather than using carbs * Find other people to help get you through the tough patches - for me, making a commitment to someone else makes me more motivated.

I agree with this - his works may have a logic of their own, or they may not, or the logic may not be a logic that can be understood by any human. For me, it helps to think of them as dreams - there's some normal looking stuff, but then there's that bit where you're cycling up a lane that looks like one you used to ride almost weekly, with the head of the sister of a teenage girlfriend looming large somewhere you can't quite place. It doesn't have to mean anything.

Freelance or job? 12 years ago

So, here's what I did when I dumped a (well paid) full-time job in order to start my own company/freelance full-time:

* Took advice from people already doing it

* Looked really hard at my living costs, savings, etc, and figured out that, probably, I could survive for 6 months or more without an income

* Made sure I had some work (a bit of repeat work, and some other projects) lined up.

* Spoke to as many other people as I could (I'm lucky, I have a solicitor and accounts in the family, as well as someone who started a company which now employee >5 people)

Talking to my wife about finances and stuff was a big deal, as she had just decided to go part-time in order to study. But we did the sums, and realised it would have to go really badly, and really we had enough of a cusion that I could find a paid position if it didn't work out.

Here I am, 18 months later, still paying the bills, still with enough money to live comfortably, and still working freelance. There are times when I'm scared stiff about money (I don't think this will go away) and other times when I'm working 10+hours 7 days a week, for a month or two at a time. I had a death in the family this month, which knocked me off schedule, and had more of an impact that I'd like to admit on my productivity, but I communicated with clients that, unfortunately, their projects were going to be pushed back, and it's been ok. Even when my second project was 2 months late, nobody complained. The client was paying a fixed-cost, so they essentially got two months free.

If you're going to do work fixed cost, do not be afraid to hold your ground when you quote for it. I sometimes even quote a little high because I know I'm really rubbish at doing estimates, and it hasn't got better in time. You know other people are going to be late with key information and decisions, and there will be somethings that you miss when you first quote, but keep communicating with your clients and alert them early when things don't go to plan, and most people will be fine - and the rest you probably don't want to work with anyway.

Just out of curiosity, how many people took their first steps in programming by typing out code from a book or magazine?

- When I started out, including a floppy disk with a book or magazine was a rarity, so BBC Basic, Spectrum and PCW-9512 had to been typed in by hand, with frustrating hours trying to figure out why they didn't work (usually typos)

Magic Roundabout 14 years ago

Incidentally, most of the traffic comes from Queen's Drive, Drove Road, and Fleming Way (Shrivenham road has been closed to through traffic for many years). Having ridden across it on a bicycle regularly as a teenager, it works surprisingly well.

It's worth taking some time to learn how to use FreeMind with just the keyboard, and to learn how to do a mind map (see [1] for an overview). It can be used exclusively from the keyboard, so you can get pretty quick with it.

I've not used FreeMind for (personal) documentation, but I've used it as a specification tool, where I think mind-maps excel as they get you to focus on all the component parts of the project - and drill down to the finest level you can.

This use seems similar to using tiddlywiki[2].

[1] http://www.thinkbuzan.com/uk/articles/view/how-to-create-a-m... [2] http://tiddlywiki.com/

To quote Richard Herring:

This political correctness stick is brought up on these occasions to ridicule a world where you can't say certain things any more. But this stuff isn't about this invented construct of PCness - does anyone claim to be politically correct? It's just a pejorative term invented by people who want to still be racist and old-fashioned. It's about respecting people whatever their background and not making sweeping and offensive statements about them based on the colour of their skin or where they come from or their disability, sexuality or gender.

http://www.richardherring.com/warmingup/?id=2299

However, the problem with Android is version fragmentation - a lot of users have phones that they can't trivially upgrade to ICS, and therefore can't use Chrome for Mobile/Android. Asking someone to root their phone and install a custom ROM, and then install a different browser is a bit crazy if you ask me.

In my experience, it's better to spend a long time playing with Vim, and then look at plugins. There's a lot that Vim does out of the box without any additional tools, and spending time learning to use (some) of it without trying to make it more like another editor is the only way you're going to get better at it. Learn about buffers and how to manage them before using BufExplorer. Learn the (many) movement keys, and insertion, append, replace, substitue, change, options before you use Surround.

It may sound odd, but learn to use the tool by itself before you try and plugin anything else, otherwise you'll just get lost.