HNHacker News
TopNewBestAskShowJobs

codebeaker

1,632 karma · joined May 4, 2012

http://lee.hambley.name/ http://www.capistranorb.com/ https://www.harrow.io/
submissionscomments
codebeaker··on LemonGraph – A log-based transactional graph
What's a use-case for this? Is it like Neo4j or some other niche usecase (e.g mass surveillance graph, given the source)
codebeaker··on Ask HN: What interesting thought did you read on HN but couldn't find later?
An article about EV vs. ICE was posted, written from the perspective of an EV being the natural way of building things (few moving parts, little heat loss, etc) and that this ICE was an intricate machine of thousands of parts channeling the spirit of fine watchmaking or Jules Verne.

I found the perspective refreshing but have never been able to find it since.

codebeaker··on Modern vehicle headlights temporarily 'blinding drivers'
Maladjusted headlights are worse, my own car has a dial for adjusting headlight pitch for when towing, and my wife constantly adjusts them "up" because she can "see better", I think this is also endemic.
codebeaker··on How not to run a CA
They're not verifying your identity, just that you control the hardware running the domain that you want to generate a certificate for.
codebeaker··on The Car of the Future Will Sell Your Data
I'm presently replacing my car (Europe) with a new Opel, I'm somewhat disgusted at how the manufacturer is pushing their OnStar service as a wonderful thing. It's GPS and full-time connected LTE with a suite of sensors in the car, and this is for a commodity €25k vehicle. It's a big-brother network, it defaults to "on" and whilst there is a "disable onstar" software button it cannot be defaulted to "off".

Customer benefits are touted as being "crash assistance if you need it", "easy access to a customer service agent (phone) who knows your position and can program your navigation" and "always-on unlimited LTE hotspot".

My wife is excited about it because always on-lte means wireless entertainment for the kids, a "safety" net incase we have a crash (but we drive nearly exclusively inner city miles, and within that group, nearly exclusively the same 5 mile stretch of main-roads). I'm flabbergasted by people's convenience over security mindset, or maybe it's the pseudo physical security offered by such overwatch programmes vs. the digital privacy security.

codebeaker··on Ask HN: What Is the Absolute Cheapest Car to Own and Drive?
To add a bit more info, most ICE engines are separated into "interference" and "non-interference", basically it's the shape of the piston heads and the valve clearance when the piston is in the top position and the valves are open.

If you have an "interference" engine and your timing belt/chain fails you smash your engine to pieces, if you have a non interference engine it just stops because the cylinders lose compression because the valves aren't being actuated.

Timing belts/chains can also damage ancillaries when they go, and as most timing belts tend to be external, they can fail and take alternator, water pump, fan, radiator, etc, with them when they catastrophically fail, a timing chain tends to be inside the engine block and when they fail one tends to be more lucky, but they can also puncture the block and cause fatal damage to the engine.

AFAIK nearly all modern consumer cars are non-interference engines, barring maybe some higher-end performance engine options in otherwise pedestrian cars.

codebeaker··on Ask HN: How to become the first result of a Google search for a name?
Your site is all but completely devoid of content, no wonder Google isn't ranking it as relevant. Try writing some content first.
codebeaker··on [dead]
Hijacking thread to provide suggestions:

- Don't have a desktop app (and if you do, use Electron)

- Don't force me to sign in to your app in the first instant (why can't I just use my AWS IAM credentials and you funnel them via your server for setting up my account??)

- Don't open in full screen at a 1997 game resolution with ugly blurry assets

- Don't have the app (OSX) whine about the location I started it from (~/Downloads/), and if you must (what's the reason anyway?) then give me an easy way to quit not hidden in a menu (after taking away my window chrome)

The experience of opening and using your current app has all but assured that I'll never use the product again, which is a terrible shame because I've very recently hurt very badly for a AWS global inventory with associated cost predictions tool.

codebeaker··on Modern terminal-based text editor
A string check for an error type in a typed language is a shortcut/laziness really. There's more complex ways (which are less elegant) to typecast the error type into a "concrete" type and figure out if it's really the issue you are looking for.

In Go error is an interface type that is expected to implement the `Error() string {}` method. That makes it quite trivial to implement a ErrFunctionDoesNotExist type which wraps the native "error" types returned by the lower down functions, and compare against it with a type assertion.

Doing this a lot gets really old, however so maybe the author took a shortcut. If that's the case, at least it's greppable.

For what it's worth there's a technique in use throughout the Go stdlib which embues the `error` type with extra methods which allows you to check the specific fault with a url.Parse9), for example https://golang.org/pkg/net/url/#Error

codebeaker··on Nest launches an outdoor security camera
I guess it's totally unavoidable, but installing hard power lines (even if it's 12v PoE) for cameras is really a deal-breaker for DIY residential installations in countries with brick and mortar construction techniques.

Anecdotally, I've a Synology NAS and any* IP camera can be hooked up to it, and there are plenty with PoE, etc so what's stopping me having a camera system at home is figuring out how to drill through 60cm thick walls made of three layers of brick, insulation and render without compromising the weather seal of my house... not lack of smart features.

ps. does anyone trust wifi cameras?

(* not quite every camera is supported)

codebeaker··on Announcing Caddy Commercial Licenses
I couldn't agree more. The terms seem overly restrictive.

Let's hope that they don't "go after" anyone who's not compliant and that this is silently a scheme to force bigger companies into compliance and let the rest of us fly under the radar.

As-is, I would owe Caddy $300/month - none of my side projects can sustain that, so I'll be switching back to nginx and some LE cronjobs.

codebeaker··on Blender 2.79 released
I still don't "Get" it, but once someone told me it was a "modal gui" (as a vim user) it clicked a bit more for me, that helps, but I don't have an artistic bone in my body, and fail to pick up blender once a year. (that said, I have no reason to use it, save maybe toying with 3d printing meshes)
codebeaker··on CSS in JavaScript is like replacing a broken screwdriver with your favorite hammer
There's nothing on caniuse.com about CSS Modules, perhaps you could share a resource?

http://caniuse.com/#search=css%20modules

I don't need any fancy tools or precompilers/processors/etc to use BEM or SMACSS, so I think you may be mistaken about how Css Modules are comparable to the list given.

codebeaker··on Show HN: Learn what DDD, CQRS, and event-sourcing are all about
> a dedicated event sourcing database with catchup subscriptions etc

Can you recommend any?

codebeaker··on Show HN: Learn what DDD, CQRS, and event-sourcing are all about
I did - reading the brochure now, the word "semantic" keeps cropping up and I wonder if it's an unsympathetic translation from German, or I'm too far away from the JS world to understand that "Semantic" means:

> That‘s why we have built wolkenkit, a semantic JavaScript backend that addresses three important aspects of software development, and that empowers you to build better software faster.

There's a bunch of things wrong with this claim, "a javascript backend" sounds like an alternative JS VM to me, a backend for javascript (I presume it's meant that this is server side JS not client side?) I also always get my back up when I read "build software faster", surely it ought to be about maintainability when it comes to the perks of DDD/CQRS.

codebeaker··on Show HN: Learn what DDD, CQRS, and event-sourcing are all about
As a non-native German speaker who's lived in Germany for coming up on 10 years, aren't you concerned that it'll be pronounced like "wol-kenkit" not "volkenkit" for non-germans?

Naming things is hard but after watching UBER Inc destroy the pronunciation, spelling and etc of a German word, I'm always cautious about unusual names.

(Also because, as now I'm hung up on the name before giving your product a fair chance)

codebeaker··on Show HN: Learn what DDD, CQRS, and event-sourcing are all about
I'm currently writing a book about CQRS/ES I'd be glad of your notes about it's downsides.
codebeaker··on Inside continues to bet on email, the “largest social network”
Chiming in to share an anecdote from yesterday, I was in the MacStore and there was what I'd describe as a totally normal early 20s white guy there, they asked him for an email address to send his confirmation or sth, and he was like "dude, I don't really use email, can I not get an SMS or something?" …… turns out that's not possible, so he gave them a friend's email address, the same one (his friend's) that he uses for his iCloud account.

I found it kind of strange, anyway.

codebeaker··on 1 in 3 Americans Have $0 Saved for Retirement (2016)
I can second this, I started putting just €100/month away and was pleasantly surprised to see it tick over into the €1000 mark very quickly. It's a standing-order at my bank, triggered when any large deposit is made (e.g it fires when my salary is paid).

Now that I reached a milestone (even if I did kill the account from 300->0, 250->0 a couple of times in emergencies) I intend to increase how much I put in there. 10% of my salary is a lot to do without, my wife doesn't work, we have two kids and a mortgage and a (useless expensive) car. But the €100 I simply didn't miss, and the €200, that will get me to the next milestone, when I'll jump to €300, and so on and so on will all soon arrive.

codebeaker··on Ask HN: In what creative ways are you using Makefiles?
are you me?
codebeaker··on What it’s like to ship yourself overnight on Cabin’s sleep pod bus
Convenience, and comfort factor. If I can take a bus, and sleep 10-12h uninterrupted, it's worth the premium.

The alternative is broken travel, lines, TSA harassment, and arriving at your destination a hollow shell of your former self having had the live and soul sucked out of you by incompetence, harmful lighting design and oppressive neon tubes and the brown noise of an aircraft engine sapping your very will to exist.

codebeaker··on UK to bring in drone registration
Great point, in fact I've been bird struck whilst riding a motorcycle and that's DANGEROUS.

I dare say though that I trust the bird's self preservation instinct more than I trust flakey wifi and an FPV pilot somewhere a few hundred meters away.

codebeaker··on UK to bring in drone registration
Currently mentoring a startup in this space (not in the UK). For us it's because of mandatory insurance for 3rd party liability, and as a non-drone owner who's seen plenty of idiots wielding them, I'm all for it.

I prefer the light touch (ala Mopeds/Scooters) where it's simple and easy, insurance at a flat rate, easy to transfer ownership. Something akin to cars with a v5 document, etc would be overkill.

I don't really have an opinion on the weight limits, how much does something have to weigh to take out an eye, or cause a motor vehicle to crash?

codebeaker··on Getting Started with Event Sourcing in Postgres
I'm currently writing a book on this (ES/CQRS), but I have come to the conclusion through some of our projects that a "subscription" model is actually less ideal as you end up falling back to keeping a lot of state in the application heap.

We rather prefer to have a subscriber who re-runs the projections which are purely functional, and dump their state.

This mandates that you have some way of querying relevant events from the underlying store. Sometimes the best store for this is a DBMS, sometimes it's something simpler like CAS linked lists in Redis or similar (lists of hashes pointing to keys, similar to git's ref/tag model)

Either way, this idea that you subscribe to a stream makes reconnection and place-holding (cursor) semantics difficult, and simply calling as-frequently-as-makes-sense your update function is simpler to reason about, and helps highlight performance issues by making it easier to see the perf of frequently called short lived processes vs dealing with any VM bloat of your choice of language's runtime managing long lived subscribers.

Caveat: naturally this is all very subjective, just my 2 ¢

codebeaker··on Pell – A simple and small rich-text editor for the web
I'm surprised to see no mention of the Trix editor here amongst the comments about how contentEditable is the root of all evil. Trix has a nice solution, from their readme:

  Trix sidesteps these inconsistencies by 
  treating contenteditable as an I/O devi-
  ice: when input makes its way to the ed-
  itor, Trix converts that input into an 
  editing operation on its internal docum-
  ent model, then re-renders that document
  back into the editor. This gives Trix 
  complete control over what happens after
  every keystroke, and avoids the need to 
  use execCommand at all.
Trix is from basecamp, and has a super healthy plugin/extension ecosystem - https://github.com/basecamp/trix

Full disclosure: not affiliated at all, but the rare times I need a WYSIWYG editor I tend to look for Trix and be very pleased.

codebeaker··on Ways to Get Better at C++
Thanks for the link it looks promising:

    The Book is intended for all C++
    developers, regardless of their experience. The
    beginner and intermediate developers will benefit
    the most from the book in their attempt to become
    prolific with C++. 
    
    Experienced C++
    developers, on the other hand, will find a good
    reference for many C++11, C++14, and C++17
    language and library features that may come in
    handy from time to time.
codebeaker··on Ways to Get Better at C++
> I would jump straight to C++ 17.

I'd love to, but there are simply no (accessible?) resources. I'd love a "how to write C++17 with no baggage" book, but it simply doesn't exist. (please, correct me if I'm wrong?)

I really want to get to know C++, it looks like it's become a fantastic language, but in all seriousness, I could write fast, performant robust Go within a weekend, I'm proficient in half a dozen other languages, and C++ programmers still unironically suggest a stack of books the height of a small table to beginners.

codebeaker··on Coroutines are now in Clang trunk, libc++
Excellent question, and one for which I've not found a satisfactory answer. Perhaps some of the HN wisends can chime in. I believe with some linters (clang, etc) you can encourage your tools to slap your wrists if you code in a bad style using outdated techniques.
codebeaker··on Badger – A fast key-value store written natively in Go
Having just gone through a lengthy review process identifying a suitable license for our soon to be open-source software which has a commercial aspect, and selected AGPLv3, I'm very curious to know what companies have it "categorically banned". We did some research and didn't find that anyone had an issue with it. Whilst AGPL does open up come grey-areas which aren't as well understood as GPL the general reason to use it seems to be as part of a dual licensing scheme where companies with AGPL issues can simply purchase a non-transferrable limited MIT license or similar.

Can you give me any more info on your sources?

codebeaker··on Italian village offers $2,100 to boost falling population
The "applications" seem now to be closed, and the linked Facebook post from the BBC source has been removed (or, I can't see it for some other reason).

If anyone has more information as to the terms to which this offer was subject, or a link to the original Facebook posting I'd be glad to see it.

← PreviousPage 3 of 9Next →