Why Moore's Law, not mobility, is killing the PC - <AUTHOR> http://www.networkworld.com/news/2013/030513-why-moore39s-law-not-mobility-267394.html?source=nww_rss#.UTcm6fQsonw.hackernews <comment><USER2> The article goes on and on about CPUs. They're right of course, anything after a core 2 duo is likely "fast enough." Tons of people have been buying the i5s instead of the i7s (myself included) for that very reason.

But they're wrong in general. Memory capacity has continued to climb (from 2 GB with Vista, to 4 GB with Win7, to 8 GB today). I wouldn't build a PC today without 16 GB of RAM.

Then we get to talk about the MASSIVE amount of improvement in IO in the last few years. The 7200 RPM HDD is dead. SSDs are now affordable. You can get a 256 GB SSD for £100.

When consumers start to experience an SSD system compared to their old "slow" HDD system, they will be at the stores in droves wanting to upgrade. SSD's speed improvement is very noticeable indeed, like night and day.

<comment><USER3> You're missing te point -- computers for the mass market are no longer an enthusiasts market. They are like TVs.

Where I work, we're stuffing users into 2GB/1core VDI instances. They work fine. The only new client purchases are replacements of dead stuff, devices that improve mobility, and some dev/kiosk machines.

<comment><USER4> So, your users aren't working on traditional "Desktop PC" instances anymore, but inexpensive terminal clients that connect to a backend Hypervisor running on a server? I've been waiting to see when companies would start doing that "en masse" - back in 1999/2000, I thought it was going to take off when Sun was promoting the Thin Client Concept. Then VMWare took it up - but, for some reason, I never saw it get any traction, and the vast majority (Well, in my experience, all) companies seemed to go the other direction (countering where my instincts thought we were going to go) - and started issuing everyone laptops. The exact opposite of thin clients connected to servers. I had to eat a lot of claim chowder.

If I'm understanding your situation correctly, how do your thin clients work out in practice, and, how do people deal with scenarios in which they would normally use laptops? (Business Trips, Airplane Flights, etc...)

<comment><USER3> I think the issue until a couple of years ago is that compute densities weren't there, and broadband wasn't pervasive.

Now you can deliver a decent desktop through a VMWare VM-centric solution or a Citrix/Microsoft Server computer solution.

The use cases work out like this: Stationary workers get PCs reimaged with a locked down OS...PCs get replaced by thin clients over time; Mobile workers either get laptops with remote access clients or tablets. The mobile folks love it, because they aren't tied down to some horrific work-issued laptop.

The big remaining problem is Microsoft licensing. Unless you have an EA, the licensing is both obtuse and expensive. Lots of big enterprises are rolling out thousands of VDI desktops -- 2011/2012 was the point where the financial case started to make sense.

</comment></comment></comment></comment><comment><USER5> Starting in the 90s up until today, the CPU surged ahead of everything else: disk, memory, and network. Today we have very, very fast chips that are bound by the speed of their connection to their memory, disk, and each other (the Internet).

Memory has improved with DDR technology. (What are we up to now... DDR4?) Disk is improving with SSDs, which offer a _huge_ speed improvement. If you've never used a box with a SSD in it, it must be seen to be believed.

But the real bottleneck I think is the Internet. Imagine what we could do with gigabit peer-to-peer IPv6 networks in areas like games, collaborative development tools, teleconferencing, etc. Things like virtual reality "metaverses" could _really_ arrive, etc. These in turn would require more CPU power and parallelism. Super-fast gigabit+ WANs would deliver the killer apps that we need to keep pushing the speed barrier.

Once again, it is the Internet carriers that are the barrier to all progress. Breaking the telco oligopolies is _the_ thing that _must_ happen to unlock the future. Everything-- maybe even the continuation of Moore's Law-- depends on that. The telcos, cable companies, and wireless carriers are the trolls guarding the bridge to the future.

<comment><USER6> Having a speedy home connection is well and good, but what really needs to improve is mobile data. Think of stuff like Google Glass, and all the possible advantages of having a constant connection everywhere you go for a two-way exchange of data.

Now imagine your data bill after just a couple hours of live streaming HD video. Something's gotta change. The bandwidth keeps increasing as technology improves, but the price per bit is actually getting higher.

<comment><USER5> Mobile data is the worst, by far, but if we're talking about pushing the performance envelope then we're talking about PCs. Mobile is constrained by power consumption as well as network bandwidth, so you're not going to see blazing fast continuations of Moore's law there.

I really think Google Fiber nationwide would lead to killer apps that would revitalize the PC and the high-end chip market. I'm thinking of rich constant collaboration, virtual reality, next generations of MMORPGs where you can really richly interact with the world's physics (e.g. shaping materials, in- world chemistry, etc.), tele-presence, digital telepathy with brain-computer interfaces, distributed supercomputing, ... lots of stuff. All those things are things that are CPU-hungry. Many are embarrassingly parallel, so they can utilize many-core chips efficiently.

If Intel, AMD, Dell, Apple's PC/laptop division, IBM, etc. knew what was good for them they'd get together and invest in gigabit+ broadband nationwide. It's also got to be network-neutral, since all the things I mentioned above are at least somewhat P2P. The PC industry is spiraling down because of a lack of killer apps for high-end boxes. Most of these are waiting on fast networks.

</comment></comment></comment><comment><USER7> Forget your grandmother. There are loads of hobbyists out there doing high quality video, audio and software development work on boxes that are 5+ years old, quite happily.

The set of things for which you need a superfast machine is really very small (compared to the whole,) especially if you are happy working within the limitations of the tools you have to hand, which covers a huge quantity of creative people, and most of the really good ones.

<comment><USER8> One reason to need a fast CPU and lots of RAM is building Android from the source (primarily within the Android modding/hacking community). I mostly point it out because it has a wider appeal than most other large projects that are built from the source by typical users regularly these days and also for its demanding build requirements. Rebuilding the entire source can be lengthy without a fairly new CPU, SSD and lots of RAM. Granted one does not have to rebuild the entire source most of the time, but rebuilding some parts like the framework base (the java userland area libraries), takes a while.

Following specs came from Google[1] the other year when ICS was released:

-6GB of download.

-25GB disk space to do a single build.

-80GB disk space to build all AOSP configs at the same time.

-16GB RAM recommended, more preferred, anything less will measurably benefit from using an SSD.

-5+ hours of CPU time for a single build, 25+ minutes of wall time, as measured on my workstation (dual-E5620 i.e. 2x quad-core 2.4GHz HT, with 24GB of RAM, no SSD).

Lots of RAM allows you to switch the compile output over to a ramdrive (or if not, move it to a separate SSD if you have two). Moving the entire source to a ram drive or fast ssd also makes editing much faster (especially the initial load into an IDE like Intellij or Eclipse) or grepping through the codebase. Doing it on anything less becomes somewhat tedious from my experience.

[1] [https://groups.google.com/forum/?hl=en&fromgroups=#!topi...](https://groups.google.com/forum/?hl=en&fromgroups=#!topic/android- building/N1exifTpPfA)

<comment><USER9> I don't understand why anyone would do this locally when you can compile on an elastic cloud instance at many times the speed for pennies. Why keep upgrading your hardware when you should just be submitting these jobs to an ultra-cheap server that will be many times faster anyways?

<comment><USER10> It might be cheaper in the long run to have it locally if you do it a lot. At current pricing tying up that much EC2 (about equiv to an XL instance) for 5 hours is going to be measured in $ rather than pennies.

<comment><USER8> You're totally right. Compiles for aosp add up quick when testing or building for multiple devices. Even cyanogenmod's (the largest group) nightly automated builds are done on bare metal servers.

</comment></comment></comment></comment></comment><comment><USER4> Excellent article - I've been waiting for someone to capture the fact, that as a reasonably productive Network Engineer/Technical Account manager, I'm able to work, every day, completely proficiently with my Dell Precision 650 -Circa January 2004. Visio, Power Point, Excel, VMWare Workstation (with 5-6 OpenBSD + Linux VM instances running) , Cisco Dynamips Simulations, Outlook+Lookout, PowerPoint, and lots more Visio. Prior to 2003, I really felt the need to upgrade every 2-3 years, and by year 3, my PC was really, really starting to drag.

I've just never felt the need to lean on IT to upgrade/replace my current Desktop though. Runs just fine.

<comment><USER11> While I share your sentiment I'm honestly kind of impressed that you run 5-6 linux VMs on a Pentium 4/AMD64 generation system. Really? Those things didn't virtualization support on the CPU yet, did they? Also, Ram probably maxes out at around 4GB which is quite low for an updated winXP with so many instances. Does that really run smoothly? I recommend you get an i5, 16GB, 500GB SSD and then come back and tell me the upgrade wasn't worth it ;-).

<comment><USER12> Vmware Workstation was first released in 1999. It never used to _require_ hardware virtualization support until recently.

Also, 4GB is plenty for Windows XP. Perhaps you have not used it for so long now that you've forgotten, but it only ever required 64MB and ran perfectly fine with 128MB-256MB even with high performance apps. All that has happened since is a factor increase in memory requirement for a limited set of applications.

With Linux guest instances, it is easy to cap and keep very low the maximum memory usage. 6x VM with 256MB each is still only 1.5GB.

Without a change in software requirements, I doubt many consumers would feel the need to upgrade anything. CPUs/PCs really have been fast enough for many years now.

<comment><USER11> Did you also _update_ your XP to the latest service packs and patches? My updated XP in a VM currently runs at 780MB after one morning of _very light_ usage. It has only one application open at 100MB.

Also, yes, virtualization wasn't always needed, but without it anything slightly CPU intensive will be _awfully_ slow. I can see it working for CLI- only linux/bsd systems, but not much else. Do you ever compile something bigger on your guest systems as an example?

</comment></comment></comment></comment><comment><USER13> Nobody is mentioning the multicore problem? Wide out-of-order CPU designs have hit diminishing returns a while ago in adding more instruction-level parallelism to the single thread of execution. Processor speedups haven't been coming dominated by faster transisitors for a while, it's been smarter OOO. You can see this now in ARM-land as they start climbing the OOO ladder.

Multicore has been the best "next step" they've come up with, but the required difficult software rewrites prevented consumers from seeing speedups.

Total on-chip exceution resources have essentially kept on the Moore's law path as CPU vendors punted to multicore designs. 99% of PC software is serial since parallel software is too hard to make.

Runing the same code faster was the reason that software used to become more hungry each CPU generation and forced people to upgrade their machines. New CPUs used to make the programmer more productive, not less.

<comment> mark-r The problem is that in a fight between Moore's Law and Amdahl's Law, Amdahl will win. Extra cores reach diminishing returns very quickly.

</comment></comment><comment><USER14> It is not just that 'old is good enough', in last years PCs are actually getting worse. I would love to spend money, but there is no stuff to buy.

My 7 years old laptop has higher display resolutions than anything on the market (except two new laptops). It is also impossible to buy laptop with 4:3 screen ratio.

My 2 years old desktop CPU overclocked at 5GHz is faster than anything on the market, last two CPU generations can not reach such performance.

And some newest SSD generation actually have worse performance characteristics than previous generation.

<comment><USER10> _My 2 years old desktop CPU overclocked at 5GHz is faster than anything on the market, last two CPU generations can not reach such performance._

That's a fairly extreme overclock! I imagine you must be able to get some impressive results from a modern i7 with the right cooling though?

I remember when overclocking was a thing that anybody into PC gaming did for economical reasons, these days it hardly seems worth the effort of fiddling around in the bios menu.

<comment><USER14> Cooling is regular Antec H2O 920, it fits into case without any problem. It took about 3 hours to assemble and overclock, I just followed manual. It runs 24/7, I do number crunching and Scala developing (slow compiler).

Intel does not bother soldering heatsink into chip anymore (saves 50 cents). So newer CPU can not be overclocked without disassembling and replacing some parts.

Results are not bad, but in reality it is just 30% speedup.

<comment><USER10> What is the CPU?

<comment><USER14> 2600k

</comment></comment></comment></comment></comment><comment><USER15> The article doesn't mention the bring your own hardware stuff that's increasingly happening at work.

Docking stations have been tried before, and they didn't work particularly well, but the time's right now for a great tablet and a great docking station. The dock needs to have keyboard & mouse inputs, network connectivity, and be able to output to a nice monitor. (Allowing user to have two monitors?).

Someone needs to sell that as a kit, with some kind of Office suite installed.

MS could, if they put a lot of effort into trimming down MS Office, make a lot of money here. (As could a Lenovo / LibreOffice collaboration. Because although Excel is still much better than Libre's spreadsheet it's good enough for many people.)

<comment><USER10> I don't know, if you accept the premise of the article that old/cheap PC hardware is good enough for most applications then what do you gain by having a docking station vs a desktop PC?

There is only a small cost saving since the expensive thing is going to be the peripherals and screen and you now have to deal with problems like employees taking the tablets home and losing/breaking them , getting malware on them or filling them up with personal stuff.

The cost of having a few computer components nailed to the desk is probably less than the loss of productivity when somebody can't work because their tablet is broken.

Are there many companies who are doing full on bring your own hardware apart from maybe startups etc who can't afford to provide extra computers to staff?

</comment></comment><comment><USER16> What's the point of all that computing power if there's no "killer app" to make use of it?

These days the devices that interest me are those that consume little power, have perpetual internet connectivity (WiFi or cell tower), and are instant on/off. It has to be portable and durable. Everything else is icing.

<comment><USER17> Just at a guess, really really good speech recognition might be a "killer app" for big, vectorized chips. I haven't tried to implement it, though, so I don't know how much power it would really take. Apple and Google seem to do all right with a little phone CPU.

<comment><USER5> As far as I know, Siri off-loads something to Apple's servers. But maybe I'm mistaken.

</comment></comment></comment><comment><USER18> Yes, I remember when my aunt was to decide between an iPad and a new PC. Once I explained Moore's law to her, the iPad won her over. It's definitely Moore's law.

</comment><comment><USER19> I think mobile phones will eventually move up and displace traditional PC with a docking system that connect to your big monitors, your mouse, and your keyboard, and maybe even a big fat hard drive.

Perhaps we will see a hybrid model in which your phone gets additional CPU and RAM to work with when plugged in?

What about google glasses and other devices? The PC should find a way to interface with that too.

<comment><USER20> "Perhaps we will see a hybrid model in which your phone gets additional CPU and RAM to work with when plugged in?"

Yes, but indirectly over the network.

The hybrid model I've been using for about 20 years now is connect a wimpy machine to a big one using SSH/NFS and a couple other technologies. For a decade or so the end users at wife's employer have been using rdesktop/vnc for their hybrid solution.

Its actually "easier" for enduser devices to connect to a (private?) cloud than to try to do stuff themselves. So that's the more likely hybrid model.

I don't run exchange server at home, or even run exchange client at home. Exchange webmail, yes.

<comment><USER19> _Its actually "easier" for enduser devices to connect to a (private?) cloud than to try to do stuff themselves. So that's the more likely hybrid model._

It depends on the latency tolerance that a use case might have. Why not have all of these above?

</comment></comment></comment><comment><USER5> It's economics. I can attest to the fact that most five-year-old chips are good enough for 95% of software I want to use. So there's no real demand outside of big data and data center applications.

The only way to keep pushing performance would be for software writers to invent new and compelling things to do that genuinely require more power. It can be something as simple as a game-- I was a teenager when Quake came out, and I remember scraping together as much money as I could to get the absolute fastest machine I could (A P120) to play it. Before Quake came out, my old 486 DX2/66 was fast enough for the Linux hacking, adventure games, and BBS/Internet stuff I was doing at the time.

We need another Quake... or something equally cool. We need killer apps. Otherwise computers are going to go over like the aerospace industry did. We stopped pushing the envelope there in the 70s, again for economic reasons.

<comment><USER21> The point is, it must be about something noticeable other than the graphics. For example, a good AI should easily be able to exhaust all the cores you can throw at it. However, it is much harder to sell. In those days they could show you some pictures of Quake and you know you wanted that. It is harder to make "pictures" of AI behavior. Alternatively, exchange AI for physics simulation.

Maybe the sandbox genre (Minecraft, Dwarf Fortress) will grow. Simulating huge worlds requires lots of processing power.

<comment><USER5> I did a lot of work on evolutionary computation a while back. Now there's something that can soak up some cycles. It's also embarrassingly parallel.

(For those who want to trot out the "GAs don't work well," "evolution is slow," etc. mantras, please delve into the literature first. EC has some interesting and unique results, the most important of which is that it's the only "AI" technique I'm aware of that can demonstrate true creativity. EC can invent novel structures ex-nihilo. Everything else can just optimize, find maxima, etc. Another way of saying it is that EC can find maxima involving unknown, novel parameters that it invents along the way, while everything else requires that you know all the parameters to be optimized ahead of time. So EC can work with unknown unknowns, not just unknown values of knowns.)

</comment></comment></comment><comment><USER22> I think what needs to be focused on is mostly software, to make it less clunky and slow, and teach developers to write efficient sofware rather than just write bloaty software since their super-powerful computers can handle it just fine. Not everyone can afford to get the best computer every couple of years.

</comment><comment><USER23> I agree with the author, although I don't buy the literary ploy that this realization just hit him recently. This has been a development building within the PC sphere for years. Not only that, many professional and countless more no-good hobbyist opinion-makers (like myself) have made this point over and over.

I'm nobody, but I have opined about this and the insipid taint of Good Enough several times [1]. Like "api" at the top of this comment thread, I feel there are bottlenecks that keep the desktop PC, and the laptop PC to a degree, constrained to the roles that we have presently envisioned for those devices.

My opinion is that desktop display technology is ultimately the root of desktop stagnation and, speaking positively, could be the root of a desktop renaissance [2]. I agree that bandwidth progress has slowed and storage capacity progress has slowed [3], but point out that only display technology has actually outright stopped and regressed. In 2001, the IBM T220/221 monitor achieved high-DPI on the desktop (3840x2400 at 22 inches). Since then, we banished high DPI from the desktop and obsessed about a marketing term named "HD" because we allowed the rules that govern our living rooms' displays to take over on our desktop. That we accept 24" desktop monitors with 1080 vertical lines in 2013 is heartbreaking.

I agree with api that bandwidth is to blame. But bandwidth hasn't stopped progressing and regressed (well, with one exception: mobile data caps). More importantly, I feel that behind the bandwidth complacency is display complacency. Put a 40" high-DPI desktop monitor on your desktop and I think the demand for ultra-high-definition content, high-clarity user interfaces, bandwidth, computation power, and storage capacity will all increase. Intel sells more processors, HP/Dell/Lenovo sell more PCs, and oh-boy would I be so happy to finally get a real monitor upgrade.

[1] <http://tiamat.tsotech.com/technology-sucks>

[2] <http://tiamat.tsotech.com/displays-are-the-key>

[3] <http://tiamat.tsotech.com/boring-technology>

</comment><comment><USER24> Hyper-competition to make a faster browser and faster websites has to be a factor. In the days of packaged software, you might be happy to get a handful of performance updates before a flashy (and more CPU-intensive) new version came out, but any web service worth its salt is built to load almost instantly; snappy usability is important when competition is a click away. And just think of how much horsepower has been saved by abandoning Flash. The end result is that the average software user (Facebook, Google, Gmail/Hotmail, etc.) has probably seen the software they use actually get _faster_ in the last 10 years.

</comment><comment><USER25> If you want to see Moore's Law in action today you really need to look at GPUs rather than CPUs. Increased performance in recent years has mostly come from increased parallelization which has limiting returns on the CPU( quad cores anyone?) but does wonders for computer graphics.

</comment><comment><USER26> "Meanwhile, Intel's push towards ubiquitous computing--gesture controls, speech recognition, and so on--not only advances traditional interface models, but the technologies involved also require strong computing heft. Sneaky, sneaky."

Lol ya this must be the reason. I bet that they have a hand in the self- driving cars too. Its all an excuse to require more computing power.

<comment><USER27> No, Intel is doing it out of the goodness of its heart.

It might be a business but they never cared about money. The push these technologies to people out of pure love of new technology.

<comment><USER28> You make money by selling what people want.

<comment><USER27> You'd be surprised.</comment></comment></comment></comment>


How To Work From Home Like You Mean It  - <AUTHOR> http://www.fastcompany.com/1806307/how-to-work-from-home-like-you-mean-it <comment><USER2> I've been working from home for many years now.

What gets me trough:

\- Wake up at the same time everyday.

\- Shower and change!

\- Have breakfast.

\- After lunch try to go work from a cafe or a public space where you have some "humanity" noise. Keeps you sane.

\- Make work dates, we are social.

\- Make sure you leave the house at least a couple times a day (even in the winter).

\- Stay away from having a tab open with Social Media, block it on your main browser :P

\- Learn to love podcasts.

\- Invest in a very expensive espresso/coffee machine.

\- Invest in Tea and a very large teapot.

\- Learn how to cook, it's a good break too.

\- Live downtown, so that you have things and ppl close by.

\- Have a place with at least a balcony so that you can get some air and work from there too.

\- Get a laptop, if you are going to not be in a office, don't replicate a cubicle in your house. Change up where you work, dinning table, sofa, desk, floor, etc...

\- Buy a bike, and bike to the cafe in the afternoon.

\- Make friends with other telecommuters/freelancer/artists/etc...

\- Keep your place organized and clean, you spend a lot of time there.

\- Meet close by ex-coworkers/friends for lunch.

\- Stop working everyday at the same time.

Remember, it's not a vacation! But it's not an office setting either! Focus on getting the best out of each. You have a blank slate for you to create _your_ best work environment now. Don't be afraid of trying different stuff and routines. You worked in offices for many years (school is part of that) it will take some time to get use to the new environment with lack of "forced" structure. You will be amazed about how much more you get done.

Happy working!

(edited for formatting, excuse any grammar erros and typos)

<comment><USER3> _\- Invest in a very expensive espresso/coffee machine._

If you don't want to drop a ton of cash, but still want fast and delicious home-brewed coffee, then I would suggest getting an aeropress instead: [http://www.amazon.com/Aerobie-AeroPress-Coffee-Espresso- Make...](http://www.amazon.com/Aerobie-AeroPress-Coffee-Espresso- Maker/dp/B0047BIWSK)

<comment><USER2> Those are great contraptions, but you will still need a grinder or ask the shop to grind.

<comment><USER4> I actually prefer grinding just before brewing coffee. It's a $20 investment, and well worth it.

[http://www.amazon.com/Black-Decker-CBG100W-Coffee- Grinder/dp...](http://www.amazon.com/Black-Decker-CBG100W-Coffee- Grinder/dp/B000UWDBWM)

<comment><USER5> A blade grinder like that won't do a terribly good job for something like an AeroPress. Grind quality is one of the most overlooked aspects of good coffee.

You really need a decent conical burr grinder to get a consistent fine grind. I like my Capresso grinder that I picked up for something like $70, but a quick googling turns up several well-reviewed burr grinders in the $30 range.

<comment><USER2> Yes, ideally made of ceramic.

There is no point in spending money on good coffee if the other variables are not up to spec.

(This is totally my personal waist of money, in no way diminishing anybody's taste and budget)

<comment><USER6> Coffee snobs!

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I've been working from home for the last four years, and maybe I'm an outlier but I literally have no issues with it. I am productive, I have a good separation between my work and personal lives, I never have an issue getting motivated, and I don't feel lonely.

It probably helps that I love my work, but I don't have any issues with distractions. I actually appreciate the fact that there are distractions around home, because if I need a break from work it's as easy and heading to the living room to play some games or kick back and relax to some tv on my comfy couch. When I need a change of scenery or human interaction, I just head to a coffeeshop to hang out and work alongside a friend or two who have also flexible work situations, or I go to a co-location workspace in the city.

I waste no time commuting, my workstation is setup exactly how I want it to be (complete with a Geekdesk and two 27" cinema displays), and I control the temperature. And if I need to "stay late at the office" it's not hard on my wife because she knows I'm just downstairs. Heck, she can even hang out in my "office" and read or do whatever while I work.

Every 6 weeks or so I will fly to the offices of my current contract to work on location, so it's interesting to compare that experience. I do end up getting into sync with the rest of the team a _little_ better when I'm physically there, but not by too much since we heavily utilize collaborative tools like skype and join.me to great effect. What I do find is that I get pulled aside WAY more when I'm on location and my workflow constantly gets interrupted; I'm way less productive. I always end up with back-pain issues too because I'm working at a substandard workstation. I do admit it's fun to BS with my cohorts though, but I don't know how important that is to the project.

I know there are benefits to working on location, but honestly in my opinion working from home is better on almost all fronts.

</comment><comment><USER8> These seem like pretty obvious details, right? I've never understood why someone wants to sit around in pajamas all day or waste time playing games/watching tv all day (don't get me wrong, I love doing those things, but I'd much rather get my work out of the way and then hang out). Just because working from home is an option, doesn't mean you're suited for the gig. A lot of people derive structure for their day from the physical act of going to and being at work. There needn't be any "hacks" or "fixes," you'll know almost immediately whether or not the lifestyle is appropriate for your working situation.

<comment><USER9> Obvious, but easier said than done. Like the author states, it's a slippery slope into the condition described by the Oatmeal: [http://s3.amazonaws.com/theoatmeal- img/comics/working_home/6...](http://s3.amazonaws.com/theoatmeal- img/comics/working_home/6.png).

I work from home, and it's amazing how effective it is to simply "dress up" at 8am and "dress down" at 5pm. If I didn't do this, it's easy to fall into the trap of starting at 8am in your underwear and spreading out 8 hrs of work all the way till 11pm. It's fine when you're single, but a recipe for disaster if you are in a relationship.

<comment><USER10> Agreed. Since we homeschool our kids (and my wife does a large percentage of the schooling), when I work from home, I am relegated to the home office or the cafe for much of the day.

My typical work from home day starts around 6:30 AM, and I work 'til roughly 8:30, when the kids wake up. I help them make breakfast, and sit and eat with them. Around 9:00-ish, my wife starts the school, and I disappear 'til early afternoon. I'll typically stop working around 4:00 PM, and if necessary, work for an hour or two later in the evening, after the kids are asleep.

The schedule seems to work well for all involved, and gives me extra time to be around my family.

</comment></comment></comment><comment><USER11> He doesn't mention flow, as in <http://en.wikipedia.org/wiki/Flow_(psychology)>. Without it, you're pretty much wasting time whether you're at home or at the office. It might be easier to force yourself to do some menial tasks at the office, but it's much easier to get into the flow in peace at home, and then you'll be 10x more productive and able to do real work.

<comment><USER12> The big question is, how do you train yourself to get ´in the zone´ when you are working in a project you don´t like with tools you don´t like?

<comment><USER13> I've almost finished reading "The Happiness Advantage: The Seven Principles of Positive Psychology That Fuel Success and Performance at Work".[1]

It's based on scientific results, so it's not yet another esoteric self-help book.

Now, back to your question: If you expect it to suck, it will suck. The author explains with princile #2 (the fulcrum and the lever) how this negative priming turns this into a self-fulfilling prophecy. Now, it might be, that the particular job simply stinks, but usually you can find something positive and just thinking about that shortly before will make that negative feeling go away. My explanation might make it seem simple and useless but I can't possibly replace all the valuable advice from the book. And it works. Give it a shot.

It's a very good read and I recommend it very highly.

[1] [http://www.amazon.com/Happiness-Advantage-Principles- Psychol...](http://www.amazon.com/Happiness-Advantage-Principles-Psychology- Performance/dp/0307591549/)

</comment></comment></comment><comment><USER14> Discipline.

This entire article is about building one core skill, entirely summed up in one word. This core skill helps create all other required skills.

That's it.

Sadly it seems to dance around discipline, like we may, avoiding saying it to not to hurt anyones feelings.

Discipline forms habits. Discipline keeps habits. Poor discipline, poor habits.

Not having and always working on your discipline makes it hard to work from home.

Fast Company; I'm available for hire.

<comment><USER15> I'm pretty sure that they are not trying to avoid hurting people's feelings. The problem with "discipline" is that people see the word and assume that we're merely talking about strength of willpower. The key to discipline is building good habits and sticking to them, not mere willing yourself to do the right thing. People often make this mistake.

<comment><USER14> Interesting.. I think we might be saying something similar.

I think I've noticed most people cringe from the word discipline. They feel building discipline like it's some life / breath sucking black hole that kills all creativity and freedom. Maybe to procrastinate.

Wherever I've found anyone with:

\- academic discipline (brilliant in a field of research)

\- professional discipline (great at their job)

\- social discipline (knows how to get things done with difficult people)

\- physical discipline (exercises)

\- dietetic discipline (eats well)

\- emotional discipline (well balanced)

\- mental discipline (don't suffer from analysis paralysis)

\- spiritual discipline (can take the good from everything, learn how to meditate/focus, get into flow easier)

I find one amazing thing. We call them successful at what they do. It's tied to their discipline. Discipline of creating, maintaining and building on good habits.

In a way, discipline leaves you free to create and succeed.

<comment><USER2> I couldn't agree more.

</comment></comment></comment></comment><comment><USER16> I have worked from home most of my working life and these things are important, however, I discovered that, at least for me, I have to like the work i'm doing even more than I have to like it in 'an office'. For me it's much easier to procrastinate when I don't like what i'm doing/don't believe in. And really, procrastination can make you hate yourself, so it makes me drift towards things I like and believe in, much more than towards money. This has been working for me for over 20 years now up to a point were I really don't understand anyone doing it differently (most notably, people going to jobs they don't like for the money, as most people do [http://www.nypost.com/p/news/business/poll_most_in_us_don_li...](http://www.nypost.com/p/news/business/poll_most_in_us_don_like_their_jobs_4iRFvxrVqLk3mxtMVmCULO) (there are similar polls in EU countries)). Life is too short for that.

<comment><AUTHOR> What do you do when you start to feel your interest/passion fade? Is it time to look for a new gig or do you have good ways to bring back the spark?

<comment><USER17> The awesome thing is that my ineterest/passion never fades. There's an endless list of things I want to try, do or test out that if my interest ine one thing fades I immediately pick up the next. When that's worked itself out, or interest goes, I find my interest in the first task is renewed.

My girlfriend, on the other hand, will not work from home because she thrives on having people around her. I guess we're all different.

</comment></comment></comment><comment><USER18> I have worked from home for the past 2.5 years. The freedom is great, but the downside is that I found I work a lot more. There just ends up being so little separation between work and home that is all just blends into the same thing.

I'm taking a job soon where I'll need to go into an office and I'm excited. Now that I have done years in an office and out, I think the best solution for _me_ is an office job that has flexibility to show up in a time window (been 8am and 10am for example) and the option to work from home when needed.

<comment><USER14> Learning to stop yourself is a hard skill.

I worked from home for 3-4 year in 2000-2004. 7 days a week, 16 hour days with the odd day off to catch up on sleep quickly became a norm because no one told me I had to stop.

I found better balance finding some time at a coworking space. The act of leaving the house and being surrounded by other similar entrepreneurs helps a lot.

</comment></comment><comment><USER19> One of the hardest things from working from home is if you share your living space with people who are unemployed and stay home most of the day.

Much more difficult to stay motivated when your house is full of people in pajamas who are surfing facebook , playing guitar hero and smoking pot.

<comment><USER20> Sounds like you need to find some new roommates. Surrounding yourself with losers is only going to bring you down.

</comment></comment><comment><USER21> Thank God for our detached garage. I walk out there in the morning (my commute, 2 days a week), and I am "at work".

I have to take frequent early morning calls (I am in California, everybody else in my working group on the East Coast or offshore), so I usually barely make it, but I do make it, and grab breakfast later. This is a bit awkward, but it works for me, and I usually finish the day at a decent time, even if I start the first hour or two in my sweats. I'm violating the preconception of wearing the costume and being ready first thing, but if I had to eat breakfast at 6:00 in the morning, I would be sick. Ugh. TMTOWTDI. (I don't have the luxury of starting at 9:00)

</comment><comment><USER22> I've been working from home since 2003. Holy crap, I just read back that sentence...

Lately I've been thinking that I can't do this forever. But like all things that people do for a long time it's hard to find a way out.

Despite the fact that I can easily not leave the house for days at a time (and worse - not even notice) I'm a happy, social person. I have a wife, daughter, lots of friends around.

However, this year I've decided not to be such a hermit and mix it up with new people. So I've booked myself some conferences (inc sxsw) and local get- togethers and see what it leads to.

Nothing worse than getting into your own safe little world - one day you'll be too scared to leave it...

</comment><comment><USER23> In art form, for the aspiring home-worker:

<http://theoatmeal.com/comics/working_home>

<http://www.youtube.com/watch?v=co_DNpTMKXk>

It's amazing how efficient working from home can become. What's even more amazing is when you realize how much time goes wasted in an office environment due to constant interruptions. The downside is that you end up with a lot of empty time to fill in.

Word of advice: Get a second part-time job/education/daily activity. Have a cuckoo clock on your PC (helps to bring you back to reality)

</comment><comment><USER24> What I've found has helped the most is moving into a house with a real office in it and only working in there.

My condo was a work free-for-all. Working variously in the kitchen, bedroom and living room imbued the entire place with an emotional vibe that made it feel like I was always at work, even on weekends.

Also: Laying down the law and getting family to respect that you are at work when those office doors close. No requests for chores, no constant pop-ins for idle chit chat or (much worse) picking fights.

I've found these things work whether I'm in my underwear or not.

</comment><comment><USER25> IRC.

I worked for home for 18 months. What made the most difference for me was having an IRC session open all the time with my 8-9 colleagues. We only talked about work issues there (more-or-less). It gave me what I missed, which was:

\- the casual non-formal interaction mechanisms with my colleagues (like just popping over to their desk to ask something),

\- it made me feel less alone

\- gave me a reason to get up and start work in the morning (as others would see when I logged in, a bit like when others see when you get to the office in the morning)

\- it made me feel part of the team.

</comment><comment><USER26> > ..."arriving" on time, eating lunch on a rigid schedule, shaving, brushing, > and so on seems pointless at first.

It did seem pointless to me at first. And then I tried it for a while and learned how to have a healthy separation between work and the rest of my life at home. And now I realize that most of these things are pointless for me when I work at home.

</comment><comment><USER27> Been working from home since early 2008, and found one of the most critical things to do is to separate your work space from the rest of your "normal" life. For a while, I was waking up 24" from my laptop. I'd work non-stop all day, and much of the night. There was no separation, no respite even in my dreams. I don't care how awesome your project/business/start-up is, you need to occasionally come up for air.

Having a separate work space I could leave and return to was great. When I was "at work", I got stuff done. When I needed a break or was spending time with my family, I wasn't sucked in by work laptop screen within sight and was able to be, for the most part, fully present.

The best of both worlds.....

</comment><comment><USER28> Why is "working" in quotes?

<comment><AUTHOR> Just because the article is about working from home but not necessarily actually getting any work done. (and how to cope with the common problem)

</comment></comment><comment><USER29> What seems to work best for me is to have a todo list. I write this list at the end of the day for the next day. Not only gives it me something to focus on the next day, it also allows me to start thinking about the potential problems I might need to solve so that when I sit down at the keyboard things sorta flow better.

<http://www.lukeschreur.com/posts/productivity>

</comment><comment><USER30> I found very productive to split my working time into slots called pomodoro, the famous pomodoro technique. I built a tool to help me getting things done and don't waste time called Tomatoes [1].

[1] <http://tomatoes.heroku.com>

<comment><AUTHOR> If you built this while you should've been working on your day job then you are my new procrastination hero!

<comment><USER30> Ahaha! Yes I am!

Well, this tool made me work instead of procrastinate so I think it was kind of "good" procrastination, wasn't it?

</comment></comment></comment><comment><USER31> Amazing how people who directly link to Neven Mrgan's blog still manage to add vowels to his last name.

</comment><comment><USER32> I've been working from home since August 2010.

The part where you get up on time, shower, shave, dress well, etc, is very important, as the author says. It's psychological - you're gearing yourself up for a day of work. If there is no physical differentiation between a work day and an off-day, the two will start to blend together in icky ways. For this reason, even though in general I am a very lazy person, I always do this. I always clean up, always dress properly, and have a part of my home I only use for work. I also have meetings every day on Skype, so if I look like a hobo people will know about it.

On the other hand, I do clean and sometimes cook during the work day. I make sure to get my work done, but since I'm at home I try to get some mundane things done so I don't have to do them when I'm off. I work for a place that encourages a balance of life and work, so this is more in line with what others at my workplace are doing (ie, I'm not slacking relative to my coworkers).

Being social is still something I am struggling with. Since I work alone and I don't have nerd friends, having someone to talk tech with is kinda missing from my life right now. The tech scene in my city is good but I just haven't been taking advantage of it by going to events and meeting people. In general, being around people is less frequent now, so it's more distracting when it happens. I have been sort of letting this happen rather than trying to fix it.

<comment><USER33> >I have been sort of letting this happen rather than trying to fix it.

Fix it - make it a priority. You've already recognized that it's an issue, just need to take the initiative to act on it. And not only is it an issue that you know needs to be addressed, but it's an important one. Treat it as such, as you would any important work goal.</comment></comment>


Sitting will kill you, even if you exercise - <AUTHOR> http://www.cnn.com/2015/01/21/health/sitting-will-kill-you/index.html <comment><USER2> > If you watch TV at night, don't zoom ahead during the commercials with your > DVR. Instead walk around or at least stand up during the show break.

Self-serving commercial advice from _The Most Trusted Name In News_.</comment>


Repeating the Mistakes of the 2008 Bailout - <AUTHOR> https://prospect.org/economy/repeating-the-mistakes-of-the-2008-bailout/ <comment><USER2> They don't seem to understand what TARP was, or how what is happening now is completely different. There would be no mortgages if it weren't for the government involvement in 2008, because no bank would be willing to take the financial risk that was imposed upon them by Dodd-Frank. The government guaranteed bad loans back then that the banks were forced to make, so when the banks went overboard in taking them of course they were going to be bailed out.

Similarly, this forced shutdown by the government is killing businesses, and to save the businesses from the government action the government must compensate them in order to compensate the population they have severely damaged. It's not just jobs that are being lost along with businesses, it's people's futures as retirement plans are being devastated. It would have been cheaper to require citizens all wear masks and gloves or painter's suits than to shut down everything for what amounts to a bad flu. Now we have Congress requiring trillions of dollars of our money and requiring hundreds of millions of dollars for arts programs be included in the bill. The oversight needs to be over congresses priorities as they are openly abusing the crisis for their own ends.

</comment><comment><USER3> Not sure how thorough they're trying to be here, but some of their language is out of date since the bill was revised and passed.

There _is_ some oversight of the treasury secretary because of Senator Schumer and co. For more information, see Schumer's comments on the day the bill passed the Senate at congress.gov. I'll edit and update if I can find the link.

Granted, it's not the best, but it's something.</comment>


Balance, not carbs or fat, is the key to healthy eating - <AUTHOR> https://www.knowablemagazine.org/article/health-disease/2017/balance-not-carbs-or-fat-key-healthy-eating <comment><USER2> The article says "balance" a lot but never says what should get "balanced".</comment>


Knox-Box Rapid Entry System - <AUTHOR> http://www.knoxbox.com/ <comment><AUTHOR> Relevant in the context of the recent FBI / iphone case.

Where I live in California, these boxes are everywhere.

One interesting aspect is that they can be alarmed, so that you can know when someone has accessed the key. It would be interesting to at least know when someone has accessed your encryption keys.

I hope the Riverside fire marshall (in the video) isn't holding up the real key on camera.

<comment><AUTHOR> [http://www.knoxbox.com/property-owner- support/faq](http://www.knoxbox.com/property-owner-support/faq)</comment></comment>


Ask HN: What are some clever ways data in public domain has been de-anonymized? - <AUTHOR>

<comment><USER2> Semantic analysis of the Federalist Papers[0] comes to mind. It originally was not known which individual author wrote which paper, but stylometric analysis (i.e. word-counting and matching word frequency distributions of the unlabelled papers against those of labelled papers (in which the author was known)) made it reasonably straight-forward to identify the original authors.

[0] A set of historical papers of great political importance. [http://en.wikipedia.org/wiki/The_Federalist_Papers](http://en.wikipedia.org/wiki/The_Federalist_Papers)

</comment><comment><USER3> Taxi data from NYC was deanonymized:

[https://medium.com/@vijayp/of-taxis-and- rainbows-f6bc289679a...](https://medium.com/@vijayp/of-taxis-and- rainbows-f6bc289679a1)

And then used to identify Muslim drivers:

[http://www.reddit.com/r/dataisbeautiful/comments/2t201h/iden...](http://www.reddit.com/r/dataisbeautiful/comments/2t201h/identifying_muslim_cabbies_from_trip_data_and/)

And then used to track celebrities:

[http://theiii.org/index.php/316/which-celebrity-is- taking-a-...](http://theiii.org/index.php/316/which-celebrity-is-taking-a- taxi-where/)

</comment><comment><USER4> I can't recall the article, but there was a case where public data was de- anonymized based on DOB and zipcodes, and it was incredibly successful in a given state.</comment>


Bark is an app that lets you bark at other people within 1 mile of you - <AUTHOR>

Hi guys, Bark is an app for android, iPhone and iPad. You can choose from 9 dogs with different faces and sounds. You can then bark with your dog to all the other dogs within 1 mile of where you are. You can see roughly how far away other dogs, but there's no actual location or identity information.
https://play.google.com/store/apps/details?id=com.bark.barkapp https://itunes.apple.com/us/app/bark./id902026569?ls=1&mt=8
You can watch bark as it spreads across the world at http://www.barkstats.com
Hope you enjoy using it as much as we enjoyed building it.
Cheers <comment><USER2> I'm going to make an app called "Shout", where you can "shout" to people within a 20-foot radius. It's going to be voice activated.

<comment><USER3> Pretty sure that homeless guy beat you to it.

</comment></comment><comment><USER4> My only gripe is the blurriness of the dog icon when it's enlarged to be your own avatar.

Can you not increase the resolution slightly? I'd like my dog-face to be chiselled and clear - not all blurry and chinless.

Otherwise this is pretty amusing.

</comment><comment><USER5> Awesome app. I have a feeling this will be the next Yo[1]. Someone with a ProductHunt account should also post it there :)

[1] [http://techcrunch.com/2014/06/18/yo- yo/](http://techcrunch.com/2014/06/18/yo-yo/)

<comment><USER6> I posted it to PH. Should be there tomorrow morning.

<comment><AUTHOR> Cheers mate, really appreciate it.

</comment></comment></comment><comment><USER7> It's kind of similar joke as Yo, but what it does is quite different.

Yo: Between your friends / Bark: Random neighborhood Yo: Anywhere in the world / Bark: Only within 1 mile

</comment><comment><USER8> Will it be possible to "pee" on things to mark the territory via geo-tagging?

</comment><comment><USER9> We need such more shit to save the world.

</comment><comment><USER10> it's a shame I couldn't download it when you were demoing it :)

</comment><comment><USER11> Hahaha this is amazing

</comment><comment><USER12> great! seems really funny</comment>


Ask HN: Do you use the virtual desktops feature in OS X Mountain Lion? - <AUTHOR>

Do you have more than one desktop in OS X Mountain Lion? If so, what is your setup? <comment><USER2> Yes absolutely. I have an 11' Air and I really like being able to transition between known desktop layouts with just a three finger swipe.

Below is a picture and description of how I keep my desktops organized.

      +---+ +---+ +---+ +---+ +---+ +---+
      | F | | T | |EF | |Ch | | G | |Pdf|
      +---+ +---+ +---+ +---+ +---+ +---+

F = All my "fun" windows. Chrome with facebook, hn, reddit, etc; iTunes; Other programs that I open and close occasionally like chat, torrent software, etc.

T = full screen terminal. I use the basic terminal included with OSX. I keep a bunch of tabs open on it. This window/desktop is the home base for my development work that touches any of my servers.

EF = Emacs and Finder. I spend a lot of time on this desktop since I use a GUI Emacs for all my local development and org-mode for all my notes/lists, etc. I also like having finder here to look for/organize files on the filesystem. This desktop is conveniently located between my terminal and webbrowser.

Ch = Google Chrome, open with documentation, tutorials, and other resources for development. This gets its own desktop since I will often keep multiple windows open with many tabs each. Each chrome window will relate to a different project that I'm working on.

G = The Gimp (also occasionally Inkscape or other image editing software)

Pdf = full screen PDFs that I'm reading like books. I could have many of these open, and I leave them open all the time so I don't loose my place.

<comment><USER3> How do you keep your desktops separate? It seems that any change made in one is automatically made in the others. I have found that you can limit an application to one desktop, but if that is true, then how do you use two separate Chrome tabs in two different desktops?

<comment><USER2> I'm not totally sure what you're asking. I've never seen a change made to one desktop made automatically to the others. The problem I do run in to is that when I open a program for the first time it seems to appear in one of my desktops at random. When that happens I just three finger swipe up and drag the window to the desktop it belongs in. I never limit a program to one desktop, I just move its window there if it gets out of place.

These things really aren't too much of an issue for me though, mostly because I am loath to ever close a window or restart a program, which leads to everything happily sitting where I placed it.

</comment></comment></comment><comment><USER4> I use it a lot in my 13" Air, I switched from PC+Ubuntu desktop to MacOS and having multiple desktops makes perfect sense to me since day one. But I've got a weird issue with multiple monitors and extended desktop, when I switch from a virtual desktop to another one, monitor shows a gray background and I can't place windows on it making multiple monitors plus virtual desktops totally useless.

</comment><comment><USER5> I use it once in a while. My problem is that I want some apps to show up on the current desktop, while others should be tied to a specific one. Because that isn't possible (as far as I know), something like an instant messenger will constantly throw me off by switching my desktop for no good reason.

<comment><USER3> If you two-finger click the application, it will give you the option to assign it to a specific desktop.

<comment><USER5> Oh that's cool, I never knew there was an "All Desktops" option. Would have saved me a bunch of grief a few days ago..

</comment></comment></comment><comment><USER6> No. Multiple virtual desktops confuse me.

<comment><USER7> Agreed. So much better with a second monitor when I need it. Otherwise alt-tab is fine.</comment></comment>


Ask HN: is web highlighting service topical today? - <AUTHOR>

Idea of one service blowing my mind last year: to create a service, which allows to highlight main ideas in web articles and shadow noise information.
Imagine two markers, green and gray, which you use to mark articles everywhere on the web. And your markings visible to all users of service (unregistered even).
Social highlighting, meta-wiki over Internet.
My fears: - there were many highlighting services before (shiftspace, webnotes.net) and only Diigo is alive now. BUT: all of them is person centered, when goal of my service is to allow users to speed read the web (and help other users to do it) - service will be unpopular because people don't like to install extensions, user.js, etc. I don't know any top service, based on extensions. - people don't need it because most of them prefer to watch and listen instead of read. - there aren't easy monetization way of such service.
What do you think about vitality of such service? <comment><USER2> Just a few thoughts:

-A lot of content on the web is already chunked into readable, bite-sized pieces since people don't like reading big paragraphs. Do we need to distill those down even further?

-How do you deal with differing opinions on what is and isn't important to highlight? If I highlight the first sentence and you shadow it, what does a third reader see?

-Maybe it is just me, but I personally hate all websites that hyperlink or markup words (even if they are trying to be useful). It makes the text obnoxious to read.

-How is this better than me just skimming the text myself?

-I could see an annotation feature being useful, perhaps allow comments on the annotations to create discussions?

<comment><AUTHOR> 1\. A lot chunked, a lot - not. 2\. It will be based on statistics. Same way as it works on Digg, etc. With a karma, with a minimal number of votes (vote=mark) to show mark to everybody. The last thing was implemented in Kindle readers (255 people marked this fragment). 3\. - 4\. So - you will be perfect marker in this service :) It's like in Wikipedia: low percent of editors is creating the content. 5\. It's a good idea, but it's not so useful, as to provide people an abstract of an article. It can be the minor feature, as many others (like a social spellcheck, for example).</comment></comment>


Peter Thiel's 1517 Fund Is Searching for the next Mark Zuckerberg - <AUTHOR> https://www.bloomberg.com/news/articles/2016-12-01/thiel-s-1517-fund-is-stalking-the-next-zuckerberg <comment><AUTHOR> Fun fact: 1517 is the year Martin Luther nailed his _Ninety-Five Theses_ to the door of the Wittenberg Castle Church.

Presumably, college degrees are as worthless as the indulgences sold by the church.</comment>


30 interviews to land a job at Apple. - <AUTHOR>

The spouse of a colleague was just offered a position with Apple. He had 30, yes Thirty interviews over the course of several months. This is amazing to me, but I would like to hear others experiences with Apple, FB, Twitter etc. <comment><USER2> Wow. While I respect a company that demands the best people and wants to find people who fit with its culture, I think that's a bit much. At a certain point, one begins to wonder how much a company like that values its employees, if they're going to make them jump through that many hoops in order to get a job.

I mean, don't get me wrong - one hears that working at Apple, Google, FB, etc is the sh*t. But at a certain point, the whole process is analogous to the dating world. A person can play hard-to-get and make you jump through a string of hoops, but after a while, the interested party will inevitably reach the point where they realize their own self-worth and quit wasting their time.

A company that puts candidates through a huge number of interview rounds begins to give the message that "the Company doesn't respect you - we're much more important." And at a certain point, the really capable candidates will have too much else on their plate to continue chasing after an opportunity that never seems any closer to bearing fruit.

<comment><USER3> Apple is not able to hire the caliber of candidates that Facebook and Google attract.

<comment><USER4> Why do you say that?

</comment></comment></comment><comment><USER5> I have a 1st round in person interview with Apple this week following 2 phone screens. Hopefully it's not the first of 30.

All my previous interviewing experience is right out of college. I interviewed at several large tech companies and each followed a similar format: 1-2 phone screens, 1 all day on-site, 4-5 interviews.

I know many companies have a 'hire', 'no hire', 'need more information' policy, so it might just have been that your colleague's spouse just kept falling into that need more information category.

</comment><comment><USER6> Doesn't match my experience when I worked there. We had a pretty typical setup: a few phone screens + one in-person all day interview round. I have to imagine he was interviewing around a bunch of different widely-spaced groups or something?

</comment><comment><USER7> I worked at a Chapters (Canadian large chain bookstore, like B&N), and while I was talking to the manager one day he said he had someone coming in for his third interview, and this was for a regular (non-management) position.

Someone asked him how many interviews he did with a given candidate, and he said 'As many as I need to do until I'm sure either way'.

Perhaps this was just the case with this individual - maybe they just couldn't make a hard decision yet.

</comment><comment><USER8> I honestly wouldn't want to work with people that aren't sure about me after a couple interviews.

</comment><comment><USER3> Sorry, but this is absolute nonsense, something all too common with these friend-of-a-friend type stories. Unless he was interviewing with several different groups and getting rejected a bunch of times, there's no way he would have that many interviews.

</comment><comment><USER9> Heh. Back in the hiring frenzy of 1988, I had 18 interviews in one day (and this on a secret from-the-east-coast-and-back trip, one weekend and one day off). Eighteen. Separate. Interviews. Looks like Apple (still love 'em) is slowing down.

</comment><comment><USER10> I wouldn't know about Apple corporate, but as for Apple Retail (I was a Genius), the interview process was very clean and straightforward.</comment>


Show HN: Hackerhub.org - <AUTHOR> http://hackerhub.org/

<comment><USER2> I hope you know what you are getting into running a service like this - have a look at some of <http://pastebin.com/archive> for inspiration.

<comment><AUTHOR> Well, it is a bit different to pastebin as with hackerhub you need to host the content by yourself.

That said I am sure there are plenty of ways to abuse the service ;)

<comment><USER3> I'm sure that when the service kicks off he will figure out the possible solutions to abuse

</comment></comment></comment><comment><USER4> Cool concept and nifty execution. It is still only pseudo-anonymous, because you need a personal URL for the repo-file. Open-source it, add some basic federation, and you have what Diaspora should have been from the start.

<comment><AUTHOR> It is open source (be aware that the [sourcecode](<https://bitbucket.org/saibotd/hackerhub/src>) is not pretty)

> add some basic federation

How? Any ideas?

<comment><USER5> In a sense, you already have, by requiring the content to be hosted elsewhere and releasing the pulling code. There is beauty in simple tools like this one. Kudos.

<comment><USER3> Yes. And i must say that the code is very small and well written.

</comment></comment></comment></comment><comment><USER6> Interesting, I've had a similar idea, but different: you download a command line tool and publish your local .md (markdown) files with it under some name, like:

      $ p register <username>
      $ vim content.md
      $ p publish <content>.md # gets published under <username>.domain.com/<content>

I didn't know if people would find this useful, but judging from reactions to this, it looks like there might be a market for it

</comment><comment><USER7> I don't think I understand. You post content elsewhere, and then this mirrors it?

<comment><USER8> I think the point is that you write your content in Markdown, the structure of your site in JSON, and this generates and serve HTML with a decent CSS. Interesting for programmers who want to quickly publish content without bothering with presentation. It's like Jekyll or Nanoc for busy (or lazy) people.

<comment><USER9> It would help if the site mentioned this. It reminds me of an old analysis of the Mozilla website where, upon launching, it showed a full screenview that preached the gospel of Open Source Software to the visitor instead of providing the user with a link to the Firefox browser.

You have to provide some context to visitors, like maybe those who are not coming from HN.

</comment></comment></comment><comment><USER10> This is really cool. Really quick to get started. It would be awesome to have an option for custom DNS ! This looks like a cool way to have a bootstrapped front-end for a few things I have in mind.

<comment><AUTHOR> Like posterous does it? Yeah, that'll be cool - I'll look into it. Next version will also include an option for overriding the CSS.

<comment><USER11> Sounds great! While checking the project out, I was thinking that it would be awesome if it was possible for me to do some design adjustments myself.

</comment></comment></comment><comment><USER8> Interesting idea. I might find some use for this. By the way there seem to be a problem with the link to the bitbucket repo.

<comment><AUTHOR> Link is fixed now

</comment></comment><comment><USER12> Neat, neat, neat. Will there be a directory?

</comment><comment><USER13> Pretty interesting idea. Took me <2 min to get a page up for myself:

<http://driverdan.hackerhub.org/blog>

Are IDs first come, first serve?

<comment><AUTHOR> > Are IDs first come, first serve?

exactly

</comment></comment><comment><USER14> Stumbled on an error when going to /r of my url:

        Warning: file_get_contents() [function.file-get-contents]: Filename cannot be empty in /var/www/hackerhub/index.php on line 129

<comment><AUTHOR> Did you check the validity of your JSON?

<comment><USER14> Yessir.

</comment></comment></comment><comment><USER15> My profile now shows a blank page... although my json file seems to be valid. Help? <http://mats.hackerhub.org/>

Great work by the way :)

</comment><comment><USER3> I like the idea, and the minimalist approach. Since there is no registration, how do you deal with duplicate ids?

PS: Please commit to bitbucket!

<comment><AUTHOR> I completely forgot the repo! I'll push any minute now. If the id in your profile is taken you'll get an error message.

</comment></comment><comment><USER16> Think I get it but would like to see a shorter intro making it obvious what it does. Maybe a couple of links to demo sites.

</comment><comment><USER17> perhaps one could categorize pages, eg, I mentioned something here about creating a UIpalette <http://news.ycombinator.com/item?id=3060902> \- could you pivot around that? Make the site a destination to find new content.

<comment><AUTHOR> Great idea! Any ideas of how such a categorization could look like?

<comment><USER17> just create them on-the-fly as submitted. The problem will be spam, I would have an API key that's created upon captcha signup that's attached to a submission, and opens up new capabilities. Maybe too complicated.

Ideally I could create a plugin, that would load a new random page from category UI after every press, then at the top of the browser would display some metadata attached to a page, like a "further info" link.

Perhaps you could create a category tree that users populate, and then allow random tags to associate -- like YT videos - choose a category but then attach madeup tags - that would be best.

</comment></comment></comment><comment> X-Istence When you got to a URL that doesn't exist instead of throwing a 404 error it just throws an PHP error!

<comment><AUTHOR> Oops, thanks! Should be fixed now

</comment></comment><comment><USER18> Is there a way to force a cache update or does this limit you to (at most) one daily new item?

<comment><USER19>
      If you've made changes to your profile, you may force a refresh by pointing your browser to hackerhub.org/r/yourid.

<comment><USER18> Thanks, missed that. Will put it in a post-commit hook.

</comment></comment></comment><comment><USER19> Are arbitrary rss feeds recognized?

[edit:] Seems like rss, not atom feeds, are recognized.

</comment><comment><USER20> I really like the idea. May use it for a couple of upcoming things I wanted to do.

</comment><comment><USER21> The font you've chosen is missing some characters. <http://j.hackerhub.org/unicode>

<comment><USER22> What browser are you using? I can see all the characters. They have specified 'sans-serif' (which most of the times means Helvetica).

<comment><USER21> I'm on Chrome 13 and yes, I see all characters too, but Ż, ž, č, ą and ę are displayed in a fall-back sans-serif font. All others using Istok Web, as defined in the CSS. It doesn't look good.

<comment><USER22> It seems that Chrome is indulgent with the font-family declaration. There is an error in the CSS.

      font-family: 'Istok Web' sans-serif;

should be:

      font-family: 'Istok Web', sans-serif;

Firefox 7 ignore the above declaration showing the page in the default font. I have forced 'Istok Web' with firebug and yes it looks ugly.

</comment></comment></comment></comment><comment><USER23> Love it!

</comment><comment><USER24> This is great. Can't wait till I get some free time to hack on.

</comment><comment><USER25> This is interesting.. what prompted such a project?

<comment><AUTHOR> I've had something like this for years as my personal cms. Lately I've seen a lot of valuable content hosted on closed platforms like g+ or even facebook and it makes me kinda sad - the people are willingly gifting their content away. If these companies decide you are no longer valuable to them (real name debate, anyone?) you may loose all of your stuff.

If hackerhub goes offline tomorrow, every user will still have their content.

</comment></comment><comment><USER26> Wow, this is really cool. Nice work!

</comment><comment><USER27> Very cool. Great work!</comment>


JQuery Interview Questions - <AUTHOR> http://net-informations.com/jq/iq/default.htm <comment><USER2> jQuery hasn't been relevant in the front-end world for quite some time now.</comment>


How to make any plot in ggplot2 - <AUTHOR> http://r-statistics.co/ggplot2-Tutorial-With-R.html <comment><USER2> This is a pretty effective guide for the custom features that ggplot2 excels at, namely faceting. That being said, optimizing the chart requires a few more steps in each case, especially when working with real world data.

For those who want a step-by-step guide on plotting with ggplot2, I wrote a tutorial that has been well-liked with an emphasis on making pretty charts: [http://minimaxir.com/2015/02/ggplot- tutorial/](http://minimaxir.com/2015/02/ggplot-tutorial/)

Yesterday, I also pushed a screencast working explicitly with R and ggplot2, with an emphasis on processing/organizing data for charting in ggplot2: [http://minimaxir.com/2015/12/lets-code-1/](http://minimaxir.com/2015/12/lets- code-1/)

TL;DR R/ggplot2 can be _very_ fussy, but when it isn't, it's magical.

<comment> semi-extrinsic In your tutorial you recommend rendering charts on OS X in order to get proper antialiasing. Isn't it easier to render to a vector format and then batch rasterize outside R with e.g. ImageMagick? Or even better, just use the vector format?

<comment><USER2> That workflow is neither the most user-friendly nor the most web-friendly.

SVGs don't have the same flexibility and compatibility as PNGs yet, unfortunately.

<comment><USER3> On Windows, use ggsave, or if not using ggplot2, use Cairo. Linux's png output device has antialiasing.

</comment></comment></comment></comment><comment><USER4> It seems, as long as "Any plot" means either a scatter, or bar chart (not even a continuous histogram).

Also:

"There are 3 ways to change the X and Y axis limits. ....Warning: Items 2 and 3 will delete the datapoints that lie outisde the limit from the data itself. So, if you add any smoothing line line and such, the outcome will be distorted"

So, is this a graphics module, or a fitting module, or a data manipulation module? It seems to do all three, depending on which functions you use to "Change the axis limits".

Edit: Probably the best "How to do everything" page I've seen is for python's matplotlib's gallery page: [http://matplotlib.org/gallery.html](http://matplotlib.org/gallery.html) \- there is rarely not an example showing exactly what I want to do.

<comment><USER5> You're right, its not really a reference. But with the understanding, one should be quipped with the knowledge to make any ggplot. It's meant to be a tutorial that explains the structure to make any ggplot. Especially for beginners for whom the ggplot syntax didn't immediately click and those who struggle for long trying to get their ggplot right.

</comment></comment><comment><USER6> It's not mentioned in this guide, but Hadley Wickham's tidyr is a more streamlined version of the reshape2 package for fitting your data into a "tidy" format necessary for ideal faceting.</comment>


Show HN: My self-typing personal website - <AUTHOR> https://jordanjrein.com <comment><AUTHOR> Hey HN - wanted to get some feedback for my new personal website that I just coded up this weekend.

I was inspired by the animation effect of strml.net, wanted to do something a bit similar in feel.

How's it feel to use? Open to some new ideas for eye-candy or features.</comment>


Fun facts about JSTOR - <AUTHOR> http://lists.wikimedia.org/pipermail/wikien-l/2011-July/109234.html

<comment><AUTHOR> See an independent but similar analysis of the Form 990s: [http://www.generalist.org.uk/blog/2011/jstor-where-does- your...](http://www.generalist.org.uk/blog/2011/jstor-where-does-your-money- go/)</comment>


Nikola Tesla predicted mobile phones in 1909 - <AUTHOR> http://recombu.com/news/nikola-tesla-predicted-mobile-phones-in-1909_M11683.html

<comment><USER2> Nikola Tesla isn't only predicting wireless communication (which he calls a primitive usage of wireless technology), but wireless transfer of electricity - - one of his unfinished projects and something that we still don't have today. Read this passage once more:

"The attention of the world has been caught and held by the wireless telegraph, and yet this is a very primitive use of the the art. So far only electric waves have been used, which have been quickly damped out in their passage through the air. It is possible, however, to transmit electric currents of enormous power for thousands of miles without demising their energy."

Too bad he got screwed by Edison & company. I think the world would have looked a lot more different if Tesla had finished his work on wireless transfer of electricity.

Nikola Tesla is viewed as one of the co-inventors and pioneers of radio and this article clearly shows his vision and how far ahead he was of his time ( check <http://en.wikipedia.org/wiki/Radio> ).

<comment><USER3> We do have wireless transfer of electricity, take a look at your electric toothbrush or Palm Pre charging puck.

<comment><USER2> We don't have it on Tesla's scale. He wanted to transfer wirelessly enormous amounts of electricity and communication on a global scale. His idea resolved using Earth as part of a powerful type-two oscillator... Basically, his solution would have enabled a cheap and global distribution of electricity and communication.

"Using a global array of these magnifying transmitters, it was Tesla's plan to establish what he called the "World System", providing multi-channel global broadcasting, an array of secure wireless telecommunications services, and a long range aid to navigation, including means for the precise synchronization of clocks. In a more highly developed state he envisioned the World System would expand to include the wireless industrial transmission of electric power."

from <http://en.wikipedia.org/wiki/Wardenclyffe_tower> \- his unfinished project intended for commercial trans-Atlantic wireless telephony, broadcasting, and to demonstrate the transmission of power without interconnecting wires.

I don't really think we can imagine what world Tesla saw or what solution he had in mind, but it's clear for us now that Tesla was correct in many of his assumptions regarding the Wardenclyffe tower, e.g.:

"Despite the ridicule he has been subjected to by scientists for many years, many of Tesla's ideas are being demonstrated to be essentially correct. For example he correctly predicted the existence of the ionosphere and electrical resonance of the Earth-atmosphere system. Resonance of the earth-ionosphere cavity with a fundamental frequency in the vicinity of 7.3 Hz was demonstrated in the 1950s as the Schumann resonance[37]. The latter phenomenon was named after Schumann, for although Tesla had detected a resonance of the Earth- atmosphere system, he was not taken seriously in his time.[38] Furthermore, Tesla appears to have excited a different terrestrial resonance mode with a fundamental frequency of 11.78 Hz."

</comment></comment></comment><comment><USER4> Everybody was thinking about wireless telephony at the time:

[http://books.google.com/books?as_q=wireless+telephony&nu...](http://books.google.com/books?as_q=wireless+telephony&num=10&as_epq=&as_oq=&as_eq=&as_brr=0&as_pt=ALLTYPES&lr=&as_vt=&as_auth=&as_pub=&as_drrb_is=b&as_minm_is=0&as_miny_is=&as_maxm_is=0&as_maxy_is=1908&as_isbn=&as_issn=)

</comment><comment><USER3> Today I am officially predicting a cure for cancer, personal spaceships, a grand unified theory, and a female president. I am a genius.

<comment><USER5> Cool, future is already here, but unevenly distributed. We have already got one of four over there: <http://en.wikipedia.org/wiki/Dalia_Grybauskait%C4%97>

<comment><USER6> Germany doesn't have a female president, yet. But the Chancellor (<http://en.wikipedia.org/wiki/Angela_Merkel>) has more power anyway.

<comment><USER7> Looks like there have been 9 female presidents (of various countries, mostly Latin America). That and a bunch of other female heads of state.

[http://en.wikipedia.org/wiki/List_of_elected_or_appointed_fe...](http://en.wikipedia.org/wiki/List_of_elected_or_appointed_female_heads_of_government)

</comment></comment></comment></comment><comment><USER8> Not sure why this is novel... mobile comunication has been possible for many years, cell phones didn't invent it. Walkie talkies, etc all existed long before cellular phones. In fact, I would argue walkie talkies are closer to what he was talking about since it didn't involve going to some cell tower. The two devices just communicate together.

<comment><USER9> Probably because this was written at the dawn of wireless communications-- shortly after the invention of radio.

<comment><USER8> Sure, his idea is definitely interesting considering the time, but the article is not. Like I say, he didn't just predict mobile phones, he predicted mobile communication which has been possible much longer than the phone version.

</comment></comment></comment><comment><USER10> Mobiles yes, but Tesla clearly seems to think (at least according to this article) that there will be no 'intermediaries', that the transmissions are 'station-to-station' (or peer-to-peer as we'd say nowadays) instead of the way the cell phone network actually works, with calls using fixed base stations plugged in to the trunk lines.

Station-to-station would indeed require transmission without loss, and power loss for a transmitter is roughly equivalent to the cube of the distance for an omni-directional antenna.

That doesn't diminish the power of this vision, but even Tesla had to abide by the laws of physics.

One 'Nathan B. Stubblefield' apparently holds a 1908 patent on a wireless telephone: <http://www.google.com/patents?q=887357>

<comment><USER11> The article talks about wireless power transmission, which relates to your point. I think as a mathematically capable physicist, he would be well aware of the inverse cube law (volume of a sphere with distance). I wonder what he was thinking? Perhaps focussed radio, like a laser ( _raser_? It'd still be a laser, just a non-visible frequency)

Also he didn't think of packet radio. But though extremely helpful, I'm not sure that it's absolutely necessary.

<comment><USER12> Masers (microwaves) were actually developed before lasers were, and do work pretty well for power transmission (as these things go - still quite a loss). You have the problem of directionality and tracking, though.

<comment><USER10> And the problem of not frying stuff in between.

</comment></comment></comment></comment><comment><USER13> I find this interesting, but not _that_ impressive.

When I was about 5, I predicted the iPhone.

Well not exactly the iPhone, but I made a lot of drawings of a device with phone, computer with touchscreen, music player, etc., in roughly the iPhone form factor. Since I am very old, mobile phones at the time were back- breakingly huge, and I had not ever seen a touchscreen.

My "design" was a bit different, though. I though it would look cool to carry the device like a giant Dick Tracy-ish watch. And it needed a very small cassette-tape memory for the computer (that was the only kind I had seen).

I also made a lot of drawings of cars with jet motors. That particular vision has not worked out very well. Yet.

<comment><USER14> For that 5 year old kid: <http://www.madv8bike.com/id10.html> ;-)

Thrust =2,450 lbs aprox 3,800 horsepower \+ after burner another 1200 horsepower

<comment><USER13> Oh yes. That _must_ be the future.

Or perhaps this, ever so slightly more practical, one: <http://www.ronpatrickstuff.com>

</comment></comment></comment><comment><USER15> "In the same way any kind of picture, drawing, or print can be transferred from one place to another. It will be possible to operate millions of such instruments from a single station."

Apparently he also predicted botnets...

</comment><comment><USER16> Tesla was a dreamer and an inventor. This is a rarely successful combination, most dreamers live too much in their dreams and fantasies to actually be a productive inventor, and inventors are too grounded by reality to really dream up something extremely special. But there are a few, like tesla or davinci that managed to take their dreams and put them on paper and try then try to make it reality

</comment><comment><USER17> Tesla probably needs accolade for his achievements (solution of all the AC transmission "problems" in one fell swoop etc.) more than for his predictions (every genius tends to make pretty accurate projections IMO).

He's generally forgotten (by the public) compared to Edison when his contribution was probably greater.

<comment><USER10> Teslas biggest 'problem' is that the kooks have declared him to be their patron saint and are going all overboard in attributing all kinds of nonsense to him.

Tesla didn't help matters with the way he conducted (pun definitely not intended) himself and some of the experiments he did.

But I'll bet there isn't a scientist that wouldn't give up a significant amount of money to get their hands on that classified notebook just in case there is some hidden gem in there.

<http://www.pbs.org/tesla/ll/ll_mispapers.html>

<comment><USER17> Well, yeh true. But at the time the main reason was he tore up the Westinghouse contract and died in relative obscurity/depression. Whereas Edison was a much more public figure.

In the later years after both their deaths many people (questioned) believed Edison had pioneered AC current (and as a result was responsible for the consumer electricity market) - none had really heard of Westinghouse/Tesla.

</comment></comment></comment><comment><USER18> Not to mention a global wireless Internet.

</comment><comment><USER19> more insightful then Heinrich Hertz:

When asked what comes after his discovery that Maxwell's radio waves exist, he replied 'Nothing, I guess'.

<http://www.acmi.net.au/AIC/HERTZ_BIO.html>

</comment><comment><USER20> I see some great predictions, but I bet he didn't predict goatse.

<comment><USER21> His papers _were_ confiscated.

</comment></comment><comment><USER22> "The only new thing in the world is the history you don't know"

</comment><comment><USER23> We could have been ave living in a different world now have Tesla worked with Steve Job during his life time.</comment>


OwnTerms: Creative Commons-licensed stock legal documents - <AUTHOR> http://www.ownterms.org/ <comment><USER2> This could be cool. We previously had some discussion about this over here:

<http://news.ycombinator.com/item?id=37112>

</comment><comment><USER3> Yes! Wonderful. Thank you, whomever made this.

</comment><comment><USER4> [http://www.bloomberg.com/apps/news?pid=20601103&sid=aBo8...](http://www.bloomberg.com/apps/news?pid=20601103&sid=aBo8DnfekWZQ&refer=news)</comment>


Problems with Bruce Schneier's "Solitaire" (2001) - <AUTHOR> http://www.ciphergoth.org/crypto/solitaire/ <comment><USER2> As a usable cypher, it has some practical problems. If you restart from the same deck for each message, both messages are encrypted with the same key stream. That's easy to break even with just two messages.

If you continue to use the deck from its ending state from the previous message, the security is better. But if the recipient ever misses a message, they're out of sync. The usual procedure with progressive key systems like this is to transmit a sequence number at the start of each message which tells the recipient where to start.

As a practical matter, people will screw up all that card manipulation. This is a criticism of most paper and pencil systems. In practice, intelligence agencies that use paper and pencil systems need a staff which decodes garbled transmissions, where the key is slightly off.

Whether this cypher is any good isn't clear. Work has been done on analyzing it.[1] It's known that there are bad keys, starting decks which lead to a short cycle, and that these are rare. There's a paper on this out of Moscow's Institute of Cryptology, Communication, and Information.[2] Key comment, after they describe what the paper covers: "Methods based on investigation of group or semigroup properties of stream cypher not published in open literature". They're not saying if they can crack it. But they did prove that it's isomorphic to a cypher which is the same except for some modifications which make it simpler. They may have proved that the fooling around with the jokers doesn't help, but I'm not sure.

"Between Silk and Cyanide: A Codemaker's War, 1941-1945", by Leo Marks, goes into the practical problems of paper and pencil encryption systems in wartime. The British went into WWII using Playfair, which is a crappy transposition cypher. He converted to a system where long one-time keys were printed on thin silk. This allowed spies to carry lots of keying material in a small space.

[1] [https://portail.telecom- bretagne.eu/publi/public/fic_downloa...](https://portail.telecom- bretagne.eu/publi/public/fic_download.jsp?id=32899) [2] [https://eprint.iacr.org/2003/169](https://eprint.iacr.org/2003/169)

<comment><USER3> Thanks for the comments. I thoroughly enjoyed _Between Silk and Cyanide_. A small correction, the Playfair is actually a substitution cipher (mapping diagrams to diagrams) not a transposition cipher. The Playfair is a paper and pencil cipher that can usually be broken by hand with even modest amounts of material[1]. The Playfair (and the Wheatstone bridge) were invented by Sir Charles Wheatstone.

[1] Helen F. Gaines, _Cryptanalysis_ , chapter 21. [https://www.amazon.com/Cryptanalysis-Study-Ciphers-Their- Sol...](https://www.amazon.com/Cryptanalysis-Study-Ciphers-Their- Solution/dp/0486200973)

</comment></comment><comment><USER4> The Solitaire link in the article doesn't work, so here's a description on Bruce Schneier's website:

[https://www.schneier.com/academic/solitaire/](https://www.schneier.com/academic/solitaire/)

<comment><USER5> In my case it's being blocked by BT and redirecting to theirs security and risk management page[0].

[0] - [http://www.globalservices.bt.com/uk/en/products_category/sec...](http://www.globalservices.bt.com/uk/en/products_category/security_and_risk_management?cid=\(pl\)counterpane\(cm\)redirect)

<comment><USER4> Is that a block? Just seems to me that this is a fairly old article referencing some other fairly old page, which now probably redirects categorically to that BT page.

<comment><USER5> Yes, I think so. I can see 404s but when it comes to security/encryption links it's not the first time it has happened. I can't access these ones either [0],[1], linked from [2].

[0] [http://www.counterpane.com/blowfish.html](http://www.counterpane.com/blowfish.html)

[1] [http://www.counterpane.com/bfsh-koc.zip](http://www.counterpane.com/bfsh- koc.zip)

[2] [http://bcrypt.sourceforge.net/](http://bcrypt.sourceforge.net/)

Edit: I just realised this page belongs to the same domain name as the previous.

<comment><USER6> I'm not on BT and I'm getting the same redirects. Looks like Counterpane was acquired [1] by BT in 2006 and became BT Managed Security Solutions [2].

[1] [https://www.schneier.com/blog/archives/2006/10/bt_acquires_c...](https://www.schneier.com/blog/archives/2006/10/bt_acquires_cou.html)

[2] [https://en.wikipedia.org/wiki/BT_Managed_Security_Solutions](https://en.wikipedia.org/wiki/BT_Managed_Security_Solutions)

<comment><USER5> Alright, thanks for the tip!

</comment></comment></comment></comment></comment></comment><comment><USER7> For my last job interview, I encrypted the plaintext "DO IT" (as in, hire me!) with solitaire. I still remember sitting in the train on my way to the job interview, frantically shuffling cards to generate the ciphertext.

My interviewer thought it was a fun gesture and it definitely helped in me landing the job. Had they known about these vulnerabilities in the cypher beforehand, I'm not so sure I would've gotten it. :p

<comment><USER8> Did they give you that as a preparation task or how did that come up in your interview?!

<comment><USER7> I had just finished 'Necronomicon' at the time. I thought I'd do something pro-active and show up with a little thoughtful gift, related to the company's main focus.

<comment><USER7> 'Cryptonomicon'. Of course..

<comment><USER9> Although the idea of Lovecraftian cryptography is appealing to me.

<comment><USER10> Summoning an Old One with a deck of cards would have also been really impressive. I would not dare to not hire someone with such skills.

<comment><USER11> Charles Stross has a series of stories that involves people summoning demons and casting magic with computers and nerdy stuff. (The "Laundry")

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> >The CPRNG state machine is not reversible, contrary to what the operational notes claim...

>>1\. Find the A joker. Move it one card down. (That is, swap it with the card beneath it.) If the joker is the bottom card of the deck, move it just below the top card.

(so in reverse: if A is 2nd card you don't know to make it top card or bottom card).

This ambiguity could be simply fixed: when you move A down, don't skip the top card, just put it at the top. Similarly for B, count the move from bottom to top as one of the two moves. It seems like you are doing less by not skipping a card, but you do create a new valid configuration, so maybe it does not hurt...

</comment><comment><USER13> Can someone explain what the desired features of a "hand cipher" are?

<comment><USER14> Well, I would say :

\- practical (using a manageable amount of paper, and/or common items like a chess board, playing cards or dominoes...)

\- fast enough (encrypt say at least one word per minute, pretty sure manual RC4 doesn't qualify here)

\- secure against an adversary using computing ressources

\- provides a way to easily store a strong key, a shuffled deck is pretty good at this

<comment><USER15> I'd add "plausibly deniable" as well - requiring either party to have a copy of "The Lil' Saboteur's Guide To Field Encryption" is probably bad for espionage.

</comment></comment></comment><comment><USER16>
        Problems with Bruce Schneier's "Solitaire" (ciphergoth.org)

There's no year in the title, which raised my ire. It's an old article. But it's hard to tell how old this article is. The end of the article has an update dated "2001 August 13" and the Last-Modified header is "Wed, 19 Jan 2005 00:12:22 GMT".

<comment><USER17> Yes, I agree that would have been wise, sorry about that! These days I'd use blogging software that would date things automatically. However I'm sure this dates from 1999 or before, because it was as a result of writing this that I ended up going to crypto conferences like FSE in 2000.

<comment><USER18> Given that Cryptonomicon was published in 1999, I'd guess the article wasn't published before then.

So... 1999?

<comment><USER17> That would make sense :)

</comment></comment></comment></comment><comment><USER19> Ah, so it's confirmed. Bruce is an NSA asset. [http://m.slashdot.org/story/193287](http://m.slashdot.org/story/193287)</comment>


Ask HN: What would you ask a magical, all-knowing, business oracle? - <AUTHOR> Just imagine for a second, if you will, that I'm a magical oracle that can answer anything related to your business. I also give fantastic advice and pointers.<p>What would you ask me? <comment><USER2> What stock is going to perform the best over the next year?</comment>


The ATS Programming Language – Unleashing the Potentials of Types and Templates - <AUTHOR> http://www.ats-lang.org <comment><AUTHOR> First let me say that I have not written anything substantial in ATS. I have been pondering what it can be used for for a long time. I think ATS has some really neat features. It is almost two languages combined into one from a practical point of view:

1) An ML style language.

2) A linear type based imperative language.

On the plus side it has strong theoretical foundations; compiler code base is small enough to be readable; it transpiles to everything and has top notch performance at least for the C target using the second style. The catch is that I would like to write code in the ML style, which requires GC for long running programs (the ATS compiler itself does use the ML style without GC as memory leak is not a concern for a batch mode application). That makes it hard to start small with a library project. The linear type style is high performance but a lot more challenging to use. Xi encourages users to start with ML style and transition into the linear type only when needed.

I have experience doing proofs (group theory in math) using a dependent type prover (Lean). Tooling is really important. Even with excellent type feedback one really needs a lot of automation (like integrated SAT provers) to make the work practical. My feeling about the linear type is the same. We need the proofs to be mostly automated and a lot of nice feedback when the type checkers fail for it to be practical. Though if safety and efficiency are both critical someone may be willing to pay the price now to use linear types. So maybe it will have good applications in the embedded software domain. In my interest area resource usage is only a (small) part of the concern. Even if one roots out all resource bugs one still has logic bugs to deal with so the the availability of and the ease to use well tested libraries are a lot more important than resource management to me.

This has been a really promising language project. If it gets some well- deserved community love maybe it will really blossom.

</comment><comment><USER2> I have some posts on my experiences of using ATS here [http://bluishcoder.co.nz/tags/ats/](http://bluishcoder.co.nz/tags/ats/)

They're for the previous version of ATS but are still pretty relevant.

<comment><USER3> Amateur question: how are linear types in "practice"? How much of concurrency do they solve? And how are they different from modern HM types?

Sorry for being vague. I'm interested in this subject but layman materials on it are hard to come by.

<comment><USER2> I can only speak as a user of linear types, not as a type theorist. They are extremely useful in practice. In ATS they enable not just tracking memory but any form of resource that needs to be cleaned up. If you fail to do so you get a compile time error.

This removes much of the burden of wondering if you got the resource management right. Especially when maintaining existing applications. If you refactor things the compiler tells you when you got it wrong.

There is overhead since you are managing resource manually - both syntax-wise and mental though.

For concurrency they enable 'solving' shared state by making it difficult to share state. You really have to pass ownership of the resource to the other thread so it can no longer be accessed anywhere else.

<comment><USER4> How do linear types help in distributed systems - you mention sharing (or not sharing) between threads, but I'm also intensely curious re: reasoning about heterogeneous networks. Some rambling questions you might be able to shed some light on -

1\. How much of a (self-contained vs distributed) system has to be completely written in ATS? 2\. How much of the emergent system can be modeled in ATS to take advantage of linear types while letting some other team(s) work in e.g. nodejs 3\. What's the onboarding experience like for a dev new to typed systems entirely? How long before they generally grasp the abstract concepts and how to express them? Are there any particularly difficult pieces?

Thanks a ton for sharing your experience! Like Chenglou, I'm very curious about linear logic/session-types/etc., but very new to the domain.

<comment><USER2> I've not had to do anything distributed with ATS that involved sharing data. I mostly used zeromq to send information around and controlled access to resources via processes.

It's a fairly steep learning curve for people new to types. Given exposure to SML it's not too hard to just use that side of things plus linear types. Dependent types and proofs add complexity but hopefully you can avoid it while learning.

</comment></comment></comment></comment></comment><comment><AUTHOR> Now it is easy to try ATS online as Xi (ATS creator) has added compilation to js capability (the compilers also run in js via Emscripten).</comment>