HNHacker News
TopNewBestAskShowJobs

shermanyo

232 karma · joined August 6, 2015

submissionscomments
shermanyo··on It's time to reconsider going on-prem
I didn't consider latency spikes on slower resources like that, thanks for the examples.
shermanyo··on It's time to reconsider going on-prem
I misunderstood, sorry. I was talking in the context of virtual servers that can scale resources somewhat dynamically. (side note, isn't it awesome we see numbers like "512GB RAM" and don't immediately assume its not a single node in a deployment?)

I initially pictured someone picking the highest spec option they can afford when setting up a new service, rather than choosing based on actual demand of each node.

> "If we took the server down for 1 hour to upgrade it, how expensive is that?"

Putting my CI / DevOps hat on for a sec: who takes production servers down for upgrades without some level of HA to avoid downtime? ;)

shermanyo··on The surprising benefits of a mid-career break
> One change is that I spend less time on video games because I realized while I had two years off that I was not getting around to them not because I didn't have time, but because they weren't my favorite thing to do in reality.

Wow, this really clicked with me.

Games had always been a big part of my down time, often as a platform to stay in touch with friends from my home town after moving away.

My interest and enjoyment came in waves, based on what we were playing, outside life and a bunch of other factors. I did notice though, that the amount of time I spent didn't really relate to how much I actually enjoyed the games (or gaming in general).

I realised I didn't actually like playing games as much as I thought. I started pulling apart exactly what I _did_ enjoy, and what was actually tied to gaming (vs something I can achieve / obtain elsewhere).

First, I stopped buying single player games. The social side was a big part of why I liked games, and most single player games I do play, I don't finish. They're generally from a friend's recommendation, so I've started borrowing games from them once they've finished. It seems to avoid the hype train too. ("No Man's Sky was fun for a few hours, but you'll get bored. Try this instead.")

I love the aesthetics and creativity of games, and a lot of my enjoyment comes from just experiencing and absorbing that. I'm sure the SEGA and Nintendo sound chips constantly chirping from my TV set up the brain pathways that make me enjoy repetitive Techno so much now.

I've gone from playing guitar, to a stable of synthesizers and samplers. When an old NES tune pops into my head, I'll start jamming rather than fire up a game I've finished a dozen times.

I don't know if there was a point to that ramble, I just thought I'd share.

shermanyo··on Why the Film Industry Hasn't Been Disrupted Yet, Part 5
I don't want to spend 30 bucks stroking Speilberg's ego just to show my (hypothetical) kids giant robots fighting for two hours.

They'll get several seasons of Power Rangers, a quality production that required the work of many professionals in the same industry. A lot of whom were probably new to the industry, building experience required to land jobs under people like Spielberg in the future.

shermanyo··on Why the Film Industry Hasn't Been Disrupted Yet, Part 5
> Not everything can be made on a small budget with innovative story. Some products can, but not majority.

Honest question, have there ever been any attempts to vary the price of content based on cost to produce?

If a studio wants to pump out high quality, low budget teen slasher flicks, why cant they sell at half the price of a CGI blockbuster?

Would those straight-to-dvd or midday movies do better if their value wasn't directly compared to AAA titles? Sure, it may not have been The Godfather, but it was a quarter of the price to see, so I don't feel ripped off.

If a movie uses unknown actors (which to me always feels more immersive than trying to imagine a star as yet another persona...), why does it have to cost me the same as a movie with individual actors paid an order of magnitude more than the previous film's entire budget?

Why do foreign films have to compete with American films at an equal price point (for local tickets)? Would more people choose a random Bollywood flick over the generic rom-com on date night if tickets were half the price at the same theater?

Maybe that's what we're seeing with original programming on things like Netflix?

shermanyo··on It's time to reconsider going on-prem
Honest question, if you're running at 10%, why have you gone with 12-core, 512 GB RAM servers? Couldn't you start with a more reasonable 4-core, 64 GB RAM until some threshold? What value do you get from such an early overallocation of resources?
shermanyo··on Smart pointers and move semantics in modern C++
Check all of Herb Sutter's CppCon videos from 2015-2016, especially this one: https://www.youtube.com/watch?v=JfmTagWcqoE

He does a great job of walking through the thought process of deciding which of the options makes sense in different situations.

shermanyo··on Smart pointers and move semantics in modern C++
Great tip, thanks for the clear example :)
shermanyo··on Smart pointers and move semantics in modern C++
Herb Sutter gave a really great talk on this:

https://www.youtube.com/watch?v=JfmTagWcqoE

He has 3 guidelines:

1. Prefer scoped lifetimes by default (local members)

2. Else prefer unique_ptr and containers

3. Else consider shared_ptr

His whole talk gives examples that show the flexibility of unique_ptr and how modern C++ can express ownership.

See slide 5 here:

https://github.com/CppCon/CppCon2016/blob/master/Presentatio...

shermanyo··on My Most Important Project Was a Bytecode Interpreter
Sure, the main book I had in mind is "SFML Game Development"

https://www.packtpub.com/game-development/sfml-game-developm...

SFML is a C++ library that handles window management, input, sound, etc... For reference, a friend and I went through the book chapter by chapter a couple years ago. He was new to programming, and I'd made a few simple games and read scattered info in the past. The book had a good pace and filled in a lot of the gaps I had.

Another great book is "Game Engine Architecture" https://www.crcpress.com/Game-Engine-Architecture-Second-Edi...

This book is a lot deeper, but I found it a great reference. I probably spent more time reading this book and going back over my engine code to refactor based on what I learned (rather than use it as a direct example implementation.

At that stage, there were a few good articles online that were focused on the ECS pattern. Here's a couple, but try to find something that matches your language, there's plenty of info out there.

http://www.dataorienteddesign.com/dodmain/node5.html

https://eliasdaler.wordpress.com/2015/08/10/using-lua-and-cp...

https://github.com/junkdog/artemis-odb/wiki/Introduction-to-...

Good luck and have fun!

shermanyo··on My Most Important Project Was a Bytecode Interpreter
A basic game engine! I was exposed to so many concepts over time, building on a code base I understood from the ground up. It was the first time my code (c++ no less!) felt completely deterministic, that I understood every piece of data down to the byte level, heap/stack/gpu locality at any point of execution, and especially the lifecycle and memory management.

If anyone is interested in creating an indie/hobby game engine, I'd recommend the following:

- game loop with independent render FPS and a constant simulation tick delta (otherwise it runs non-deterministic due to floating point) - "entities, components, systems" architecture (ECS) - data-driven content (load level and game object data from JSON or similar, and programmatically build your scene) - basic event or messaging system

Honestly, I can't think of a field that covers as wide a range of CS topics at the depth I've seen in lower level game development.

If you focus on understanding and implementing the popular patterns and algorithms recommended by the indie community, its not the most daunting of projects. There's so much great information, and a few good books that break down and walk through a working implementation you can build on once you understand it from the ground up.

shermanyo··on The Netflix Backlash: Why Hollywood Fears a Content Monopoly
Ads for your own content are still ads. I just want to watch 20 minutes without interruption.
shermanyo··on Ask HN: What would make your life better?
I have issues trying to learn some specific part of a system, or new API when I already have some knowledge in the area.

I find most guides are aimed at beginners following an example, and aren't always the best resource to get through an issue when I'm stuck on one detail.

The alternatives are browsing the actual documentation, which can be hard to navigate when you are still learning.

The last option is to ask questions on coding forums, which is where I have had the most success. The main problem is the asyncronous nature of clarifications or follow up questions.

I'd love an app or site where I can post a question to a forum, with a link to a realtime chat session I can monitor for the next few hours and interact with people interested in the topic / question.

I've had a few great experiences on irc channels where a string of questions would turn into a tech talk by someone who understood things in detail. Or someone bored found my problem interesting enough to walk me through step by step until things clicked.

Maybe your site/app could give users a URL to paste into their posts, similar to people linking pastebin examples. It should handle the creation / removal of rooms and possibly archiving in case people want to save a transcript for reference.

If it focused on doing one thing well, I'd use it. I probably wouldn't switch to a new 'general' forum just for the feature though, unless it had a large community to go with it. (stackoverflow network for example)

Whatever you do, good luck and thanks for taking the time to give back.

shermanyo··on Aus Government will block overseas websites that refuse to collect GST
As a citizen watching those in charge, it feels more like I'm the embarrassed child at a bbq watching our drunk dad slur something racist about the neighbours, take a swing at his brother in law for something he misheard, trip over his thongs and spill beer all over his pants.
shermanyo··on Millennials Don't Care About Owning Cars, and Car Makers Can't Figure Out Why
I went from commuting for the first couple of years by car, to moving within a 10 minute bus ride from my office.

Being a major city, the bus fare alone is cheaper than parking. I live within 15 minutes of world class night life, a city who's main source of income is tourism. An uber home costs little more than a drink.

For a lot of high rises, the cost of a car park is comparable in price to an extra room. It could be the difference between a nicer place or one further out.

I used to road trip to my home town before I started working, but the last few years have been trips overseas, or to other states with the same friends. Not having a car payment, or registration, or insurance helped here...

I know my lifestyle isn't for everyone, there are a lot of pros and cons. I think putting off settling down and having a family (another millennial trend?) removes a lot of the need for a car though. By the time I stopped driving, it seemed more an inconvenience than anything. Like that bulky spare couch you don't have a room for after moving house.

Just offering my $0.02 as a millennial that relates to the story.

shermanyo··on Ask HN: Strange bug workarounds?
Our team was porting our middleware product to an appliance environment (stripped linux os, hardened image).

We had a config script that we used internally for test environments, and were hoping to use it on box until our code covered this part of the setup process.

It relied on starting several services in order, and checking certain things were running at various points, by parsing the output of 'ps'.

Unfortunately, the appliance used a BusyBox version of 'ps' that truncated the output.

I ended up writing a shellscript that checked /proc manually and echoed a string that would match the main offenders, aliased 'ps' to the new script, ran the setup and it worked first time.

I used it on our nightly test runs for ~ 3 months without issue, until it was properly replaced.

shermanyo··on Ask HN: Strange bug workarounds?
For the last couple weeks, I've been doing some work through the following chain:

- Windows VM (to isolate VPN connections)

- RDP to a Windows VM (jump box in the cloud network)

- VMWare vsphere client (to perform the initial appliance iso installation)

The bug I've encountered: the first keypress is echoed several times, while keys typed immediately after are only sent once. Any short (< 1 second) pause in input will cause the next keypress to echo several times again.

Leading to input like the following:

login> rrroot

password> pppassword

My workaround to get through the initial configuration (so I could ssh) involved remembering to press/release shift before I typed anything. (on screen keyboard also worked, but where's the fun in that?)

It ended up feeling like the habit of tapping esc before entering a command in vim :P

shermanyo··on How I learned to program
He's just lucky his team used CVS, and not CMVC... :S

I swear I used to have a flowchart I'd blindly follow, and god help me if there was a conflict record :/

shermanyo··on IBM’s 24-core Power9 chip
slightly off topic, but for some reason your comment made me remember the time I had to do some regression testing of a fix backported to a really old version of our software.

We had to test against the OSs we'd since dropped support for, which included HP-UX, AIX and s390.

The first time I heard someone mention a "31bit" build, I thought they were taking the piss :P It just seemed so odd at the time...

shermanyo··on 4 a.m. Is the Most Productive Hour
My anecdotal, subjective observation is that:

- early risers have a consistent additional couple of hours every day.

- night owls make each day last as long as it needs to.

shermanyo··on Show HN: JSON.is
afraid to google in case its actually a thing... :P
shermanyo··on Using Intel’s Xeon Phi for Brain Research Visualization
Favourite comment in ages, thank you!
shermanyo··on 50 Shades of System Calls
There are several options here, ncurses being a popular choice.

I found an example that creates a subwindow and moves it based on keyboard input:

http://www.paulgriffiths.net/program/c/srcs/curwin1src.html

shermanyo··on We’re pretty happy with SQLite and not urgently interested in a fancier DBMS
Ah, longer caching is the factor with web I always forget after focusing on apps / games. Thanks for pointing it out.
shermanyo··on Ask HN: Examples of reliable software you enjoy using
> Vim is also worth learning, it makes editing much more... relaxed I guess. No longer have to move your mouse to the arrow keys or even the mouse/touchpad to scroll or select. It also helps that it exists on nearly every Unix system you'll ever connect to.

People often talk about the speed of use, but this is (IMO) a result of its efficiency. I liked your use of the word 'relaxed', I'd add: slow down your actions so you have time to think about what you're doing, almost like narrating your actions.

Vim has a grammar that works well when spoken. Learn Vim's way of saying the action you're performing, then learn the relevant keys, adding them to your vocabulary. If a sentence makes sense in your head, try it and it'll probably work as expected. Say you started with:

"delete 3 words" == d3w

"yank to the end of the line" == y$

From this you could assume these valid:

"delete to the end of the line" == d$

"yank 5 words" == y5w

It takes time, but it builds up when you add a word to your vocab here and there, when you have a concrete use for it. (often one you'll remember from the 'wow, that was cool' moment when you first see it in action)

shermanyo··on Ask HN: Examples of reliable software you enjoy using
For music production, I use Ableton Live. It has a non-linear workflow that increased my creativity by an order of magnitude, and is a joy to work with.

In my experience, its been rock solid reliable (generally give them 6 months before upgrading to most recent versions).

shermanyo··on An audio engineer explains NPR’s signature sound
I lost it the first time I saw "jazz + jazz = jazz"
shermanyo··on UK votes to leave EU
As a non-american / non-european, I find this interesting.

For a lot of things, I see countries of the EU are _more_ unanimous on topics than the US is internally.

The death penalty is a prime example. It varies state to state in the US, but (AFAIK) is consistent across EU countries.

Gambling is another, I didn't realize it was actually illegal in some US states. I'm not aware of any individual countries in the EU that differ from the majority there.

shermanyo··on 3 shirts, 4 pairs of trousers, meet Japans hardcore minimalists
Also, in most cases the alternative is to hire equipment.

I could never justify owning even a cheap set of golf clubs, pool cue or bowling shoes, but I'll never turn down an invitation by friends or family. If I do something rarely, but still enjoy it, I'll treat it like planning and budgeting for any other night out or holiday.

shermanyo··on 3 shirts, 4 pairs of trousers, meet Japans hardcore minimalists
I think a good approach is to buy things if/when you need them, not in advance. Your example of a tig welder, wait until you have a specific project that requires it, and then look at your options. For fixing a toilet seal, only buy the parts you need, don't accumulate a 'spares' draw of parts you can pick up easily the day you need to work on something.

Maybe a friend buys a welder you could borrow, before you yourself need to use it. What if you need to unexpectedly fix a different problem? (roofing, tiling, etc...) Could you need another tool instead that you hadn't planned for?

I group tools with things like PC hardware, into "under $20", "~$50", "~$100", "~$250" and "~$500". I normally have $500(AUD) set aside for my next project (rather than a collection of tools of similar value), so its always there when I actually need something specific.

I've started working on a hardware MIDI controller with my little brother, so spent around $250(AUD) one afternoon on a soldering iron, arduino, book and a few bits and pieces (buttons, pots, LEDs). I avoided huge packs of LEDs, Resistors, etc... and just bought a few I knew I'd need (10k resistors for the buttons, etc...).

Anything left over, I'll donate or leave with him. If I don't have another HW project, I'll probably give him the soldering iron and multimeter too. Plus, I'll know who to ask first if I need to borrow one in the future ;)

I probably cost myself an additional $100 on this project, but I don't have to pay for a shed, or 'spare room' (like most of my friends have) to store various things, so it probably evens out over time.

← PreviousPage 5 of 7Next →