
HTML5 App on a Floppy Disk - bradgessler
http://tech.pollev.com/articles/html5-app-on-a-floppy/
======
riobard
That's really convoluted to simulate bad network. Here is an easy route if you
are on OS X: get Apple's Network Link Conditioner [1], a System Preferences
panel plugin. Once installed, tune your network to 3G Lossy and test again.

[1]:
[http://adcdownload.apple.com/Developer_Tools/hardware_io_too...](http://adcdownload.apple.com/Developer_Tools/hardware_io_tools_for_xcode_4.4__late_july_2012/xcode44hwiotools6938115a.dmg)

~~~
kevinSuttle
The test is about download performance and cacheability, though Apple's
Network Link Conditioner is useful.

~~~
riobard
Define “performance“ and “cacheability”.

~~~
kevinSuttle
Front-end Performance: both actual and user-perceived. Cacheability: How well
dynamic and static assets cache, and are retrieved from cache. This also has
an effect on performance.

~~~
riobard
None of the above has anything unique to do with testing on a floppy drive.
You need a good way to simulate different network conditions, and a good
inspector to check the various states on the client.

------
dvt
"Building apps this way makes them highly cachable. It''s trivial to deploy
this app on a CDN."

Building apps _any_ way makes them cachable. I don't get it. The app could be
50mb and the browser would still cache it.

"A mobile HTML5 app should probably never be over 1.44MB. If it doesn't fit on
a floppy its probably too big. Bonus for fitting on an 8"."

Why? And why would you get bonus points for making it 700kb or less? This
isn't 1983. Worrying about bandwidth, memory, and processing power (in user
space) is no longer relevant. Instead, worry about scalability, cross-platform
compatibility, code practices, etc, etc.

Size should be the last thing on your mind. And setting arbitrary limits
(1.44mb) is just silly. Calling this kind of exercise in futility "practical"
is even sillier.

"Impresses hipsters."

Ah yes. That explains the up-votes.

~~~
devindotcom
"Worrying about bandwidth, memory, and processing power (in user space) is no
longer relevant."

What? Am I missing something, or is this a colossally irresponsible and
narrow-minded way to approach software development?

~~~
dvt
Not at all. There's a very clear trend of micro-optimization obsession. It's
funny to see how many questions on SO deal with absolutely silly micro-
optimization issues when the rest of the code-base has much bigger problems.

Worrying about micro-optimizations (like making sure the size of your code is
<= 1.44mb) takes time away from worrying about more important issues.

~~~
potch
Ensuring your app loads quickly over the network is definitely an
optimization, but to call it a micro-optimization is wrong. Size on the wire
for html5 apps (frequently loaded over mobile connections) is completely
relevant.

~~~
dvt
3g is virtually ubiquitous. And building an app having weird contingencies in
mind (atrocious wifi connections, 5 billion people downloading simultaneously,
downloading from outer space, etc.) is not good engineering. Unless you like
spending time in development hell.

"Oh no, our application can't be simultaneously downloaded by 3 million
martians because our client is too big." I'm being facetious, of course, but I
think the point applies. Don't build stuff with weird contingencies in mind.
The average user (of an HTML5 app) will not have to worry about processing
power, bandwidth, or client size. As long as it's not like 20mb or something
stupid.

~~~
ricardobeat
It is well known that lower response times increase conversions and reduce
abandonment on any website. There is absolutely _no_ reason for a website to
cross the 1-2mb threshold unless it's a _huge_ web application, a game or
image-based app, or is serving you hi-res photos.

And, obviously, websites are accessed from all kinds of connections. Not
everyone has a generous 3G plan, and even the US doesn't rank that well in
average broadband speeds.

------
dy
Pro Tip: If the app is meant for distribution, you'll want to make sure Write-
Protect on the floppy is enabled.

~~~
bradgessler
I made that mistake but one of our devs was quick to turn that on and saved
the day. Now I need to learn how to shrink wrap boxes.

~~~
bluedino
What you really want to use is plastic bags in racks or on pegboard.

------
wslh
Is this Amazing? QNX had a demo of their OS with their windows environment,
browser and more goodies in a 1.44 floppy disk.

I also created a Linux distribution with the Squeak smalltalk ported to SVGA
lib: <http://swain.webframe.org/squeak/floppy/> and remember SqueakNOS:
<http://squeaknos.blogspot.com>

A full browser in 1.44 mb is a good target.

------
thrownaway2424
You used to get all of QNX including the GUI shell and the web browser on a
floppy.

------
quackerhacker
just going to say this: i miss snapping close the little metal shields on
floppys.....nostalgic

------
ebbv
I put floppy disks on our site at work as a tongue in cheek fun visual and
unfortunately nobody else liked it. Including our conversion rate. :(

------
bradgessler
Hey folks! I'm happy to answer questions about this if you've got 'em of if
you're in SF next week you should stop by our Middleman hackathon. The creator
of Middleman will be there!

<https://www.facebook.com/events/194420917372942/> is the registration link.

------
mmanfrin
Please rotate your phone when you film.

------
kayoone
I am sure an USB 3.0 (Thunderbolt would be even better) floppy disk drive will
solve that issue!

~~~
igravious
Sorry for being irritatingly SNOOT[1]ish but it's an _a_ (not an _an_) that
you'll be needing there before that USB thingy because the U in USB is
actually a y sound and you put an a before a y sound; viz. a yellow USB cable.
Pauses, takes breath, exhales.

[1] [http://harpers.org/wp-
content/uploads/HarpersMagazine-2001-0...](http://harpers.org/wp-
content/uploads/HarpersMagazine-2001-04-0070913.pdf)

~~~
kayoone
oh, thanks for correcting ;) English isnt my native language so i might be
forgiven :)

I dont really get why the U (which stands for universal) is a y sound. What is
a y sound anyway ?

~~~
igravious
No problem :) Because it is pronounced youneeversal :) Also, same reason you
should write a hospital (or a hotel, they are aspirated, not silent) and not
an hospital (or an hotel) no matter what people try to tell you!

~~~
qu4z-2
This gets problematic with some words, like "herb" where aspiration varies by
location.

------
millerm
This video reminds me of: <http://www.youtube.com/watch?v=Bt9zSfinwFA>

This response is humor, and not technical. So, don't follow if you don't feel
like laughing.

------
themstheones
It's very difficult and bordering on impossible to get an internal floppy
drive in a modern pc. Probably the best bet is digging up a IDE LS-120 drive
somewhere and using it through a PCI IDE controller.

~~~
downrightmike
USB, media cards and 3.5 floppy boom:
[http://www.newegg.com/Product/Product.aspx?Item=N82E16820192...](http://www.newegg.com/Product/Product.aspx?Item=N82E16820192022)

~~~
themstheones
Those actually use a floppy bus for the floppy disk drive, and good luck
finding a pci floppy controller. I doubt one ever existed.

------
gotschi
just copy the content to your hdd? and back for permanent changes - is that a
big problem for you? this way at least you can satisfy your fetish for floppy
disks :D

------
flippyhead
You have a floppy drive? Hello 1995!

------
Simple1234
What the hell is a floppy disk?

