HN user

sofuture

1,089 karma

jeff@imsofuckingfuture.com

Posts3
Comments197
View on HN
HBO No Go 14 years ago

It's amazing that people are surprised at all when a combination of proprietary media-playback system don't work as desired.

No snark intended, I've just not ever had a good experience dealing with a single proprietary playback mechanism.

I Have 50 Dollars 14 years ago

People are not mocking app.net for not being free. They are mocking it for being a generally silly idea borne of nerd-rage against 'the man' err... Twitter... wait, what?

"This means it produces many utterly vile posts - but all of them are true expressions of people as they are, not as they pretend to be."

A vast majority of the vile posts are people playing a game/acting out a character/aping (along with) the community. It's willfully not-in-earnest. It's crazy that people think 4chan is 'true expression'.

That's not to say that there's not truth in 4chan, it's just that it's not on the surface, it's 'another layer down'.

For example, take /fit/, the fitness board. It's full of great advice and discussion... as long as you know enough to read past the obvious bad advice that's willfully posted to fuck with people.

Canvas Networks (USV Funded) is looking for engineers #3 and #4 to join a small close team building the rich-media community platform of the future. Our stack is Python/Django/MySQL/Redis/a whole-lot-of JS/EC2 and our deploy process is "git push" -- if the tests pass on Jenkins the code is automatically deployed, which happens twenty times a day. We're generalists and looking for the same, so it doesn't matter what specific tools you've used before. If you pick things up quickly, if you're always curious, if you're constantly thinking about the next big problem and solution then we're looking for you.

The job title says "Software Developer" but really we're looking for "Software Entrepreneur" or a "Startup Engineer". Shipping a great feature is important, but positively changing user behavior is the ultimate success criteria. Built-to-spec takes a backseat to moves-the-metrics. If you want to build something you can point at and say "I made that happen" then we're looking for you.

Things we'd like to see:

- Strong development fundamentals

- Web development experience

- Python experience is a plus, but not requisite

- Bonus points for experience with EC2, Redis, Javascript, iOS/Android

- Motivated to build stuff

Free lunch, flexible hours, one of the biggest arcades in Manhattan (3 cabinets!), competitive salary and full benefits (health, dental, vision), take-what-you-want vacation.

Our office is in Union Square, Manhattan. If you don't live in New York City, we'll pay to fix that.

Shoot an email to jobs@canv.as with a resume, a link to your github, webpage, etc. and tell us about something cool you've built.

New York, NY - Software Engineer - Fulltime

Canvas Networks (USV Funded) is looking for engineers #3 and #4 to join a small close team building the rich-media community platform of the future. Our stack in Python/Django/MySQL/Redis/a whole-lot-of JS/EC2 but we're generalists and looking for the same, so it doesn't matter what specific tools you've used before.

The job title says "Software Engineer" but really we're looking for "Software Entrepreneur" or a "Startup Engineer". Shipping a great feature is important, but positively changing user behavior is the ultimate success criteria. Built-to-spec takes a backseat to moves-the-metrics.

Free lunch, flexible hours, one of the biggest arcades in Manhattan (3 cabinets!), competitive salary and benefits, take-what-you-want vacation.

More details and how to apply: http://canv.as/jobs

Amazon.com does not run on the same EC2 that you and I use. It runs on a nearly identical system that is isolated and private to Amazon. I wouldn't be surprised if they were in entirely different physical locations.

New York, NY - Software Engineer - Fulltime

Canvas Networks (USV Funded) is looking for engineers #3 and #4 to join a small close team building the rich-media community platform of the future.

The job title says "Software Engineer" but really we're looking for "Software Entrepreneur" or a "Startup Engineer". Yes, your day job will be writing code. But that's the only similarity to a big company software job. You'll be challenged to take big ideas and turn them into concrete testable hypotheses. Shipping a great feature is important, but positively changing user behavior is the ultimate success criteria. Built-to-spec takes a backseat to moves-the-metrics.

More details and how to apply: http://canv.as/jobs

We do the same thing for the same reason. Luckily we were able to split off a lot of our other content serving (same content, not to canvas elements) to a CDN which is backed by our origin servers. It's a little crazy, but is the best we can do until there's better CORS and custom SSL for Cloudfront.

Your two complaints are that 1) your phone is slow and old, and 2) a specific app is poorly put together. Somehow, from this, your conclusion is that the entire Android ecosystem is broken/worthless/something.

That's ridiculous, to put it mildly.

It's mind boggling that people treat being able to consume (fettered or not) media as a god-given right. The suggestion here is that our best option is to 'be terrible' to old media until they understand what it's like to be treated poorly?

You want to know how to fix things?

Stop buying what they sell.

We went guns-blazing from .Net on physical Windows servers to Linux/Mono/EC2. Mono performance is okay -- we still run a lot of C# utility stuff on Linux with it, no problem (build on windows, push to s3, servers self-deploy).

Forget about web stuff though. Mono fastcgi is not production ready (lots of little things, the interplay of nginx and Mono's fastcgi server 'lost' some routes, particularly scriptmethods).

Mod_mono is better... until you start getting OutOfMemoryExceptions. My understanding of the problem is that the Boehm GC is non-compacting, and thus, unless you (somehow) craft your application memory use patterns perfectly, will run out of memory if you churn through enough allocations.

From the mono ASP.NET FAQ:

Why does the memory consumed by the Mono process keep growing?

Mono currently uses a conservative, non-moving, non-compacting garbage collector. This means that the heap is not compacted when memory is released. This means that applications can produce memory allocation patterns that will effectively make the process grow, just like C, C++, Perl, Python applications would.

It is hence important to not get into patterns that would create these holes, for example such a hole could be created if you create a block of size SIZE, release it, and then create two blocks of size SIZE/2+1.

ASP.NET in Mono is particularly vulnerable to this kind of memory problems because it is easy for developers to define APIs that transfer large blobs of data like entire image files, these would allocate a lot of memory that can easily be fragmented.

A simple solution is to try to write your software in a way that large data blocks are not allocated, but instead your application handles them in blocks (like writing a "copy" command).

So the new GC, S-Gen is available, but for us at least, ~6 months ago it was really buggy. Some of our code would inexplicably cause mono crashes in the allocator. We couldn't run our apps with it, at all.

So ultimately we were left with restarting our webserver process every 30 minutes or so, or we could switch back to Windows web servers. Mono was decently performant, but going back to Windows we had a slight but noticable performance increase.

Don't get me wrong, Mono is awesome for a lot of things, and it kicks fuckin' ass to run my C# on Linux. But the ASP.NET side of things is just not mature enough. It's possible I'm just a bad programmer and if I'd taken the time to re-architect our allocation patterns to play nice with Boehm this story would have a happier ending, but alas :)

P.S. None of this stuff is fresh in my mind right now, so shoot me an email you have more questions or run into any specific situations or whatnot.