HNHacker News
TopNewBestAskShowJobs

borlak

185 karma · joined February 24, 2012

submissionscomments
borlak··on Star Wars 3D Scrolling Text in CSS3
Not working in Chrome Version 22.0.1229.94/OSX either, and Chrome says it is up to date...
borlak··on Race-condition-free deployment with the "symlink replacement" trick
There is a simple way to solve the original problem and the one you mentioned. A load balancer. One that you have a good amount of control of and an API (such as Zeus, F5...)

You basically take the nodes off one at a time, wait for connections to finish, sync over code, then bring it back up. This does make some assumptions about assets -- that they are in a different location, such as a CDN or static server. If you are removing assets, you need to do this at the very end of this node-syncing process, so that any live "old nodes" aren't linking to deleted assets.

As for newly updated assets, you should be doing versioning for those anyway (even this 'symlink trick' fails when multiple application servers are involved and no shared code space).

borlak··on Fish can become invisible to predators
I thought it was going to be about fish in deep water seeing in a different light spectrum.

I had a dream last night where someone had an animated tattoo, which got me thinking about how that might be done. I figured you could have layers of tattoo ink done in different light spectrums, and then with special glasses that change spectrums slowly you could see the animation.

borlak··on Apple says no Java for you, removes plugin from browsers on OS X 10.7 and up
Since I was the lone developer using windows at my workplace, I decided to give Apple/OSX a fair shake. The fact OSX was unix based seemed awesome to me (some of my projects are in C).

Then began the hell of trying to do anything "unixy" on OSX. Custom libraries just for the mac (custom libev??), needing to install XCode Dev Tools to get gcc compiler(???). Sigh.

In the end I just ended up running a CentOS VM in virtualbox, and I do my development there. The ONLY benefit I currently gain from a Mac is creating iOS apps.

borlak··on Use What Works: Prefixing Database Tables With 'tbl'
A place I worked did something that was at first extremely annoying, but later made a lot of sense -- prefix all the column names of the table with the table name.

So for a table 'user' you would have: user_id, user_name, user_password, etc. Some tables would have ridiculous long column names.

So what is this good for? First off, joins. If you had a 'post' table and a foreign key back to user_id, the naming scheme was: post_userid. So a join would be: "select from post inner join user on user_id = post_userid". There is no need to alias either table. Also, if both tables have the same field, say both have a 'note' field, it is clear which note you are accessing and there are no ambiguous issues (since one table is post_note and the other is user_note).

borlak··on Using the HTML5 Fullscreen API for Phishing Attacks
A similar issue was shown when Adobe Flash fullscreen was first introduced (I think it was just Macromedia at the time, but anyway).

When you went to fullscreen in flash, it printed a giant "you are now in fullscreen mode" in the middle of the screen, but somebody showed that simply by printing similar text all over your screen, it hid that warning very well.

borlak··on Why was a scam company able to raise $76 Million Series B?
Also, if 1-2% of your charges through a merchant result in a chargeback, the merchant will drop you completely. However, a good scam company will have a few merchants lined up just for this reason.
borlak··on Lumia 920 low-light shootout with iPhone 5, HTC One X and Galaxy S III
do all these phones automatically vignette their pictures?
borlak··on Did Blowing Into The NES Cartridge Really Work?
This is the second report I've read that says that it doesn't help. But there's something these reports are missing, because the simple fact is that it DID work. I've personally proven the hypothesis a hundred times in my childhood: (re)insert cartridge X times -- doesn't work -- blow -- works. It was extremely rare that blowing did nothing in my experience, and the solution in those cases? blow harder.
borlak··on Licensing of Titanium chaotic and unclear
Accepted Answer TL;DR:

[sorry] we will not charge for development that happens under the “App Explore” product (i.e., the free version). Usage of the Appcelerator platform (Titanium Mobile SDK, Titanium Studio, Analytics and Cloud Services) at this level is permitted for all applications, both commercial and free, with no financial obligation to Appcelerator. [sorry, we aren't transparent enough]

borlak··on Torque 3D to be Released on Github under the MIT license
Tribes 2 was not a commercial flop, it did extremely well for a 2001 game.

The studio (Dynamix) did not "go under", they were closed by Sierra/Vivendi for "restructuring", which was a shock considering the success of Tribes 2. In fact, the next game (Tribes: Vengeance) was green-lighted due to in large part the success of Tribes 2.

GarageGames was partly made up of some ex-Dynamix employees.

borlak··on Valve is bringing Steam to your TV Today
So I connect my PC to the TV to use a Steam UI, thereby limiting what I can do with the PC...okay

Basically it's just a UI for using a controller while lounging.

borlak··on Github is down
There are also major security reasons to do this -- not relying on github to secure their website/application, which they have already failed to do in the past.
borlak··on How Yipit deploys from Github with multiple private repos
best way: don't deploy from github. you should have an internal github server (github enterprise). don't rely on the site to secure your production code. they have had security problems in the past.
borlak··on 1and1 ask for passwords over the phone
I don't use 1and1, so I don't know if this is possible, but why not:

1) change current password to some stupid password

2) give password

3) reset password back to my normal password

4) move on with life

borlak··on ToS;DR — TL;DR for Terms of Service and Privacy Policy
random gripe: if you use a different email on gravatar than on github, your gravatar wont show up on github.

it's becoming pretty standard, especially among techies, to have a unique email per site, so you can easily tell if a site is selling your address (or is a victim of a hack, like dropbox was).

I emailed them about it -- too bad!

borlak··on Job market for a 30+ person learning to code?
build something you can show off, then apply for jobs.

a lot of employers are going to also ask: what do you do to keep up with the changes in technology?

also, learn SQL. it's easy, and necessary. pick a database, install it, become somewhat familiar with it.

borlak··on 4chan: Beyond one billion
scientology
borlak··on Xamarin raises $12M to help you make better apps faster
You claim cross-platform apps, but then you have two development packages. Mono for iOS and Mono for Android. If I develop on Mono for iOS can I take the exact same code and plop it down on the Android version?
borlak··on Varnish author criticizing HTTP/2.0 proposals
load balancers aren't meant to just be "HTTP routers". they can definitely be used as such for smaller applications and do a good job at it, but a real load balancer needs to be quite complex, being able to adapt to the underlying applications that make use of it.

if your goal is to only route HTTP requests, then you're only solving the first step of an increasingly complicated field of computer science (namely, web applications).

Cookies aren't going to go away. if you want to improve the protocol to deal with cookies better, that makes sense, but acting like they are some kind of evil on the internet that should be forgotten isn't going to work. it's a bit self-defeating to argue that some protocols failed because of failure to provide new benefits and then argue against Cookies in HTTP!

borlak··on 'Unprecedented' discovery could propel quantum computers to reality
have you read Cryptonomicon? :) you might like it
borlak··on WebSocket benchmarks
My guess would be that the poor performing implementations are using the naive select() solution, instead of one of the more logarithmic solutions like epoll or kqueue.

Pretty surprised to see node.js behave so poorly. We had discussions recently at where I work as to what server solution we should use for a multiplayer platform, and as I had recently built a socket/connection handling server in C they asked what I thought about node.js, and my only concern was that if the underlying code uses select(), then it's going to be a poor choice...but I don't think anyone got around to testing it.

search for: C10K for more information

borlak··on Facebook launches App Center
introducing: an app store inside an app you got from an app store!
borlak··on Apple to drop Google Maps in iOS 6 for in-house Maps?
Google maps could definitely be improved upon. it makes mistakes all the time, and the huge feature they brag about -- being cloud based / up to date -- is never up to date enough to really matter. there has been construction going on for months on a major road in my city, and google maps still pretends it is open. so much for the cloud.
borlak··on Doing It Right, Not First
do it better, not do it right

"right" is always changing

borlak··on $106million thanks to Angry Birds
I have an idea for them.. a game where monsters are trying to invade your fortress, and you have to build structures that attack them while on their path, and you can upgrade them!
borlak··on Airplane boarding simulations
I'm assuming here just based on experience, but...you don't just go to your seat and sit down, you have to put your bag in the overhead bin, which takes some "aisle time".

in back-to-front, a line forms as you are waiting for people to store their bag. one person can take up [block] 3 rows of seats while he is fiddling with putting his bag overhead.

in random seating, people all over the plane are storing bags at the same time, instead of just 1 or 2 people.

borlak··on Error handling style in C
this is correct and why the original post is all wrong. what is calling foo()? it should be making sure foo() is happy, and if not, then continue your logic from there.

that is how you handle errors in C.

borlak··on Ruby programming challenge as job application
the only winning move is not to play
borlak··on Bad News: Google Is Doing The Corporate Future-Vision Video Thing
Google's video reminded me of Microsoft Surface. I thought MS's video was crap, and Google's is no better.
← PreviousPage 3 of 3