Ask HN: If I quit my job, will I ever work again? - <AUTHOR> I'm seriously considering quitting my job.  I make plenty of money, but the money isn't what's important to me.  The culture is bad and I'm just not able to write great software.  The skilz, they are suffering.
I can survive for a while, so I'm thinking about taking a six-month sabbatical and rebooting my career.  I want to work on open source projects, learn Clojure, and finish my master's degree (not for the paper, but for fun).
So the big question is: can I emerge from the other side of this and find great people to work with and cool stuff to work on?
What would you do during a six-month sabbatical in order to find more awesomeness? <comment><USER2> If you don't have any dependents, you should quit. I could spit out a bunch of mundane platitudes to support that suggestion, like "In life, you never regret the things you do; you regret the things you don't do" or "You have to do what you're passionate about, or you'll never be happy," but you already know those things, everybody does, that's why they're called platitudes. You already know you should quit.

Ergo, your problem is motivation. Allow me: _I'm going to keep calling you a pussy over and over again until you quit your job._ Of course, you won't be able to hear me because I'm in my basement and you're not[1], but trust me, I'll be saying it. Pussypussypussy.

[1]Unless you're my black lab, in which case one of us needs to get the other to the hospital.

<comment><USER3> Sounds like something <http://www.awesomenessreminders.com/> could branch into.

<comment><USER4> Potential Awesomeness Reminders.

"Good morning! Did you work on [side project] yesterday? You're not going to be awesome unless you do!"

Simply being accountable to a mysterious voice on the other end of the telephone every morning might actually motivate a lot of people.

<comment><USER5> "You've been awesome all week! Don't break the chain!"

[http://lifehacker.com/software/motivation/jerry-seinfelds- pr...](http://lifehacker.com/software/motivation/jerry-seinfelds-productivity- secret-281626.php)

</comment></comment></comment></comment><comment><USER6> I quit my job in March, 2009. Traveled all throughout Southeast Asia for four months.

A month after I returned the CTO at my old job contacted me and gave me an offer I couldn't refuse. How about that.

I like a lot of things about the job/company/people. I think I just needed to get that out of my system. Although, I would like to do more trips in the future.

My life has returned to normal in some ways, but I'm much wiser and more mature than before, and also making more (and saving more).

I can't think of any negatives about the experience. Although, yeah, quitting was tough--including all the stuff you need to wrap up (i.e. moving out, into storage, canceling subscriptions, selling car or other stuff you won't need, breaking the news to your parents, etc).

I kept a travel blog, if you want to get inspired: <http://bp321.com/travels>

And my top 100 photos from the trip (in random order): [http://billpaetzke.smugmug.com/Travel/Best-of-Southeast- Asia...](http://billpaetzke.smugmug.com/Travel/Best-of-Southeast-Asia-09/)

Do it.

<comment><USER7> I'm quitting my job in March next year to travel from Thailand to Mongolia for 4-5 months (via Cambodia, Vietnam, China, South Korea). I will be leaving with the smallest rucksack possible, no computer. Not sure what I'll do after that yet, but high up on the list is to spend some time with my family who live abroad.

<comment><USER8> Funny. I am doing _exactly_ the same thing in October. If I'm not going to be working for a while why should I pay U.S. prices to see the same old things when I could be seeing the world and saving money at the same time?

I do plan to take a laptop though because my primary goal is to use this as an intense personal study period.

<comment><USER7> I want time away from the computer altogether. I think I'll take my iPhone 3G though, for GPS waypoints tracking, and occasional email and Wordpress blog updates.

</comment></comment></comment></comment><comment><USER9> There is a middle ground between quitting and not doing anything enjoyable.

I noticed a few weeks ago that I am always kind of tired after work, and can't do anything really useful. So I decided I'd go to bed early, and then get up at 4am to work on stuff I wanted to work on. Fresh coffee, fresh from sleeping, and not tired from work.

Then around 9, I go to work and have a normal day. I might be a little tired at work, but I'd rather have the awake-and-creative me for myself. I don't get paid enough to give them that.

<comment><USER10> _I might be a little tired at work, but I'd rather have the awake-and-creative me for myself. I don't get paid enough to give them that._

Wouldn't your company notice that and complain? Most software companies I know expect their employees to give 100% effort.

<comment><USER11> Some software companies I know are quite unable to measure results, let alone effort.

<comment><USER10> Some companies or managers keep track of LOC, bugs/loc, commits, or even screen/keyboard activity...

If it is not automated, the managers usually keep a mental note.

</comment></comment></comment></comment><comment><USER12> I quit my job in November '09. My intent at the time was to spend 3-6 months developing new skills and reading about/learning all the cool things I'd seen on HN and pushed off until "when I have time."

Midway through, an idea that began as a learner project turned into a startup, 3-6 months turned into 9+, and I'm learning more than I ever have, and about more than just the programming topics I'd planned on.

Meanwhile, I've gone to meetups and startup events (like the Work at a Startup Day), and my personal projects -and my commitment to developing the skills to build them on my own- have been the starting points of lots of conversations with cool people from cool companies, opening doors to opportunities I'd have never had if I'd still been working at a full time gig that my heart wasn't into.

The most important thing for me has been making sure to use my time well. It's easy to squander the time, so it's paramount to have a plan and stick to it. That said, the plan can be pretty flexible since you set the schedule (assuming you don't have dependents limiting that).

My biggest concern is whether I'll be able to go back to a "regular job" after the freedom of working on my own projects on my own schedule. But I'm hoping that I won't have to find out.

Do it!

</comment><comment><USER13> If you're young, debt free and don't have any family relying on you for support, then I wholeheartedly recommend leaving to do what makes you happy.

When my job ended this past February, I booked a ticket to Europe and spent the next four months in "mini apprenticeships" making cheese in France and the UK. I learned to milk goats and sheep, castrated pigs, sheared sheep, and improved my French markedly. There's a lot to be acquired by immersing yourself in a different culture for an extended period of time.

Before I'd left I'd received a lot of remarks claiming I was "sabotaging my career" (or something to that effect) by taking extended leaves to follow my passions. The way I look at it is that I'm doing these things while I'm young and still physically capable of doing it, at a time when I'm not prevented from doing them financially or because I have a family to support.

You could wait to start living the care-free dream when you're 65 and retired...but who knows if you'll even be around then?

</comment><comment><USER14> I'm writing this from a hostel in Italy. I worked for a major corporation and asked for 2 months unpaid time off because the 2 weeks a year for the last 8 years of my life just wasn't cutting it. They said no and I handing in my resignation. I gave six week notice and during that time I was able to find another job that would let me start 3 months after my end date to allow for my trip. I just finished visiting Norway and Iceland which were absolutely amazing. Don't be afraid, go enjoy life a little bit.

</comment><comment><USER15> Absolutely do it. But don't sit at home writing code. Get out and see a bit of the world.

These days most tropical beaches have wifi, so you can still do all that boring stuff you listed above. You'll just do it from a laptop while living in a grass hut and eating Thai food every meal. Trust me, it's way better that way, and it's also a lot cheaper than sitting out your sabbatical in your expensive apartment.

Step one is to head down to the bookstore and park yourself in the Travel section. See if you can make it 20 minutes into Lonely Planet's Southeast Asia on a Shoestring before you head over to the coffee shop to boot up and book a flight.

Don't worry about your career. It'll still be here when you get back. As others have said, taking six months off often just gives your friends time to find you awesome contract jobs at their companies. Chances are you'll have something lined up before you even leave the beach.

Good luck!

<comment><USER8> Hilarious. Is _everybody_ doing this now? And here I thought I was being original!

It makes sense on so many levels. You save money, you broaden your horizons, and you shake up your thinking enough to let some new ideas out. I figure when I'm done I will have either put together a much more compelling github resume than I ever would have in an hour or two a night after work and I might even have an idea for my own startup.

</comment></comment><comment><USER16> I'm surprised at how many negative replies there are. I know people who have quit to hitchhike across the U.S., bike across Europe, teach music, raise a family, spend time doing construction, try their hand at day trading, get a law degree, and work in marketing, among other things. None of them have had problems coming back to programming.

You're asking if you're going to have problems finding a technical job after quitting so that you can spend time improving your skills. Are you kidding? I can't even imagine this hurting you career, and I wouldn't be surprised if you end up with unsolicited interviews if you write up what you're doing in some way (whether it's on a blog or via something like github or bitbucket). Sure, there are companies that won't hire you after a sabbatical, but do you really want to work for those sorts of places?

P.S. Good luck (not that you'll need it)!

</comment><comment><USER17> You should quit, especially if you don't major obligations (debt, family). In 10 years you'll always regret not having done so. And definitely think you can emerge on the other side just fine- thats largely a function of how you're willing to market what you did. Its a constant fear of people to have to explain gaps in their resume, but recruiters at companies that you'd actually want to work for (e.g. ones that aren't looking for docile employees) won't care about that as much as your drive.

I spent the last 3 years working at a firm where luckily, the concept of "sabbatical" was accepted and almost encouraged in your third year. I've seen a number of different things that people have done, and given your goals, here are a few ideas that you might find relevant:

\- Take a job that you absolutely would never take for the money, but want to do for the experience. Former colleagues of mine have taken eye-opening jobs working for various non-profits all over the world, had the chance to travel, and reboot. The benefit here is you get a chance to think about your career and what you might actually want to do. Take a job at another company that you're interested in, if permitted \- If you're going to spend time doing stuff you can do remotely, do it in a foreign country where you can ride the currency exchange and do really cool stuff when you're not working (e.g. buenos aires, china, etc.). Mobility is priceless

</comment><comment><USER18>
      We rest here while we can, but we hear the ocean calling in our dreams
      and we know by the morning, the wind will fill our sails to test the seams
      The calm is on the water and part of us would linger by the shore
      For ships are safe in harbour, but that's not what ships are for

<comment><USER19> I believe this is from the song "Ships" by Tom Kimmel & Michael Lille, and the last line is (mis-)quoted by Admiral Grace Hopper.

</comment></comment><comment><USER20> I took 4 years off and worked on my own projects, even one that was a medical device. No real successes.

And now I'm working as a contractor on a web app for some company called Apple. And am contacted by recruiters virtually every day, even without Apple on my resume.

<comment><USER21> what did your resume look like before that?

<comment><USER20> I worked for IBM for four years after college, then worked for web developer at a small web-based training startup for 7 years.

My experience is that through contracting you can re-establish yourself even after extended time away. The bar is lower because the employer makes no commitment. And its likely you'll make more money in less hours contracting than a salaried job.

It also helps to know a few things that are in demand.

</comment></comment></comment><comment><USER22> Getting away from regular work or school is a good opportunity to reevaluate your lifestyle, or at least address some part of it that bothers you.

The work will be waiting for you when you get back. If you're in an area with active tech gatherings you can show for those and keep up your connections. Nobody worth your time would hassle you over a short break that produces some noteworthy portfolio items(like open source work or a degree).

</comment><comment><USER23> My wife kept urging me to take the 6 months sabbatical (she was even asking for 1 year), we even had a big argument about that. In the end I chickened out.

Instead, we came up with a compromise, I quit my job and start working as a contractor while she continue doing awesome at her job.

The compromise should give me the time and mental energy to find awesomeness.

To really answer your question, my path is easier, I could just find a "safe" job later when things get tough.

To answer the last paragraph, I just love programming so much. After a stressful day at work, I need my Python as bad as I need a cigarette. I don't need a break to seek that mythical awesomeness (My definition of awesome is to finally launch a useful service for real people). I need a break to ran away from those pesky Employee Agreement contract, crappy boss, and mental drain caused by him/her.

My life at home is not different at all nowadays. Just a lot less stress.

PS: Future boss might ask, why there's a gap in your resume? I know my old one would.

<comment><USER15> Dude, my resume is almost all Gap, and it hasn't ever hurt me.

You get hired based on what you can do and how you come across in an interview. Taking time off to travel and code will improve both those things.

What happened in that 6 month gap? I built and launched [whatever].com. It's a ... built on ..., and it's cool because of .... Oh, and funny story, while I was building it _on the beach in Mozambique_ , I actually had... [followed by some amazing anecdote about the local village chief coming in give me feedback even though he'd never used a computer]

Trust me, it's a net positive.

</comment></comment><comment><USER24> Yes, quit and it won't hurt, you'll find work in 6 months. You might even be able to get hired someplace before quitting, on the condition that your start date is six months from now.

You're probably burned out. If you use this time to do tech stuff, web surfing or playing video games, you'll be just as burned out at the end only you'll weigh a few pounds more.

My advice instead is to take a real vacation. Go to Thailand for 3 months, then go to Argentina or Brazil for another 3 months. Don't connect to the internet during this time except occasional emails back home to let them know you are alive. If you absolutely must, take your development laptop and work on things, but it's important to be disconnected. Having a laptop means you have to recharge it, find a stable source of electricity, etc. Things will work better without it.

</comment><comment><USER25> I am doing the same thing. After finding HN a few months ago, I couldn't believe how far off track I was (I was in the M$ dev route). I'm rebooting my career, learning new tools and languages I find interesting on HN. I am so much happier now.

</comment><comment><USER26> Hey craftsman, though I think you should quit too, but asking for such advice on HN you'll most definitely get a biased view - because everybody here is so passionate about what they do, not how much money they get paid! right?

I think there's absolutely nothing wrong with a person happily living with a corporate life. But if you are growingly sick and tired of it, then what's the point? From the sounds of it you do have a pretty successful corporate career, so I doubt it'll be hard for you to jump back into it.

If you are scared of the possibility of failure, fail faster (which reduces your opportunity cost), and fail spectacularly!

</comment><comment><USER27> I did this. Closer to eight months for me, but it was great. Worked on my own projects, sharpened my saw, traveled to Europe, just ran on my own clock for awhile. It was an amazing sense of freedom to have no one expecting me to turn up at work at a specific time and place each day.

Eventually I got bored and got back in the game.

But it was such a good time. Really recharged my batteries and left me in a position to do much more interesting work than when I began.

Just do what seems fun and challenging and see what happens. Good luck!

</comment><comment><USER28> Why not use the 6 months to see if you can turn it in to 18 months? In other words, create a project and try to make a living of it. A year should be enough.

Alternatively I would learn some new skill, preferably one that will increase my market value at the end of the six months (running your own business is also such a skill, even if you fail).

If you go about it in a more clever way then do what Patrick did and first build up your side line, then quit.

Just in case. That way you don't need to eat up your savings first.

</comment><comment><USER29> I mostly just have opinion about this so I'll give you my opinion.

From the description of your current situation I'd say it's worth it to go for it (go do your thing). But I think you already know that :)

Don't you think it's worth it to risk a little, put your neck on the line a little, maybe even put yourself in a bad spot for awhile, for a chance to live like you want to? Life is living, live it and make it.

</comment><comment><USER30> The key thing will be that YOU feel the time was spent on worthwhile pursuits, and that you convey that when a prospective employer asks about the gap. No waffling, no hemming and hawing, no apologizing. Great people with cool stuff to work on appreciate having great people who've done cool stuff along side them. Step right up!

</comment><comment><USER31> [http://www.ted.com/talks/stefan_sagmeister_the_power_of_time...](http://www.ted.com/talks/stefan_sagmeister_the_power_of_time_off.html)

A TED speaker Stefan Sagmeister makes it part of his career to take a year off every 7 years. I recommend watching this video before making any decisions.

</comment><comment><USER32> This has been a great post to read. I'm also considering this to reset my career early (graduated not too long ago), switching from embedded software development for $BIGCORP to startup-esque web development. I want to do it to 1) be happier with my career (and figure it out) and 2) gain solid skills to do well at the end of the "sabbatical."

The only issue is that I've had medical work done through employer-provided insurance, which I would lose of course. However, I'd quit after the insurance has paid its share (I've already paid mine). It's a commonplace procedure so I'm not too worried about complications.

I'll probably move back in with the parents to save the cash. It won't be as bold as traveling around the world, but perhaps that is for a later day.

</comment><comment><USER33> _The culture is bad and I'm just not able to write great software._ You do realize that you could solve that by writing great software, in clojure no less, on github.

You're not always going to be able to work with people with the exact same culture or skill levels. That is going to happen anytime you work at any place, including your own, where the number of people > 5 (it's my _magic_ number)

So why do people leave companies ? better money and better promotions. If you believe your master's degree will help .. do it (and get the paper) (sometimes they just do it to spend six months in Phuket)

I see you have not really mentioned about being an entrepreneur - maybe I'm reading too much Freud, but you need to think what you want out of the six months you wont be earning.

</comment><comment><USER34> I'm a paranoid sob and hopefully my paranoia can help you. 1\. Write down a plan of what you'll be woerking on. 2\. Contact companies that work in this field and ask them if they would give you a job if you were an expert in the fields your going to work in. 3\. Can u work alone? It gets very lonely. Figure out all the mechanics of how your going to work on your own. You'll be surprised that setting this up to be fun can be a lot of work. 4\. Do it!!! at some point you have to make a leap of faith. Just be sure you've covered the worst case scenaios (ie have some back up plan) and then jump!

As long as your skills are valuable to someone you will be able to get a job.

</comment><comment><USER35> For those that took that 6 month sabbatical (or 3 month or whatever) I have a couple questions.

Did you have the savings already saved up?

How much did you this end up costing you financially? What were your expenses like? Where did you stay?

Did you go by yourself (assuming you don't have any dependents)?

If you worked on your startup, did you have the idea before or after you left on your trip? Did you work on it the full time?

I want to do a startup, but I don't have an idea just yet.

And for those that coded on the beach with their laptop, how did you see the screen? I find being outside with a laptop I can't see the screen almost ever.

I see someone posted a link of a blog they kept, does anyone else have a journal of their trip they can share?

</comment><comment><USER36> I work with someone who has several 6-12 month gaps on his resume. He is amazingly talented, and was taking breaks to travel and enjoy himself. He can work anywhere he likes - it's definitely not a concern to have a gap like this.

</comment><comment><USER37> If you insist on leaving, then you can work on freelance basis.. like working on freelancer.com and Elance.com

You won't make a lot of money, but at least.. you will make money when you need it.. and you will make enough money to survive!

<comment><USER23> Just my humble opinion, I personally stay away from Elance.

Judging from his confidence (about his income and 6 months savings), Elance income won't cut it. I'd suggest local connections and Craigslist.

</comment></comment><comment><USER38> Why do you need to quit to accomplish your goals? Sounds like you're already coasting through a bad experience. It's a much more compelling narrative to switch jobs than to quit one and find another while unemployed.

</comment><comment><USER39> Years ago, it used to be that $BIGCORP would look at you very suspiciously if they saw a gap in employment of more than a month or two. In this economy, it's not unusual to see good talent that's been laid off for the past year. It took me four months to get back on my feet when I got the whack in January.

I say quit, but give yourself some buffer. There's the real possibility that if you start looking for work in March, it will be August or September 2011 by the time you find something.

</comment><comment><USER40> "can I emerge from the other side of this and find great people to work with and cool stuff to work on?"

Without a doubt. It might take a bit longer for you to find a new groove (or refind your old one) but you'll have no problem eventually getting back in the game.

Obviously a broad statement. _you_ might, perhaps. My experience, though, has been people I've known who had this level of self-awareness and drive for improvement were never held back for very long at anything they set their mind to.

</comment><comment><USER41> I'm taking 6 months off next year to hike the Appalachian Trail. I have a great job that continues to challenge me even after 9 years (10 by the time I start) but I just need to do something different for a bit.

Luckily for me, I asked, well in advance (9 months from my planned start date, give or take), and my company said "sure," which made the whole thing a hell of a lot easier. Not paid of course, but I'll still have a job when I return.

</comment><comment><USER42> Without disrespect to the intelligence of anyone else on this board:

How is anyone else besides yourself supposed to answer this? Only you have true insight into your motivations, skills, desire, and ability to succeed.

There is no cap or limit to what you are able to do (okay, let's set aside physical limitations - not everyone is meant to be a football player or pole vaulter) - there is a soft cap set only by your desire to work hard.

<comment><AUTHOR> I see what you're saying. So maybe the question for you is the last one I asked: what would you do? What could I learn from you?

</comment></comment><comment><USER43> Life is too short to be stuck doing things that do not make you happy. I was once told that life is filled with ladders. You approach a ladder, climb it, and when you get to the top where your skills have seemingly peaked you need to think about jumping on to another ladder. How do you know it's time to jump? Once you stop learning you know it's time to go.

I'm sure you will be just fine after 6 months.

</comment><comment><USER8> There is _nothing_ more dangerous to the long-term success of your career than burnout. The question you should really be asking yourself is "Can I afford _not_ to do this?"

I've had a lot of luck so far in life with this approach: I assume I'll be successful at the thing immediately in front of me and base my plans around what I might do next.

</comment><comment><USER44> As you can blame it on finishing your masters, I think you're not going to have reason to have trouble explaining it.

</comment><comment><USER45> Six month sabbatical to find more awesomeness? And I'm kind of assuming you are fairly young? I would do the following:

1\. Buy a round-trip (6-month) ticket to Delhi or some place that interests you.

2\. Buy travel insurance.

3\. Pack 1 (one) daypack. No backpack, just a small daypack. 2 pieces of underwear, minimal clothing. 1 small camera. No laptop.

4\. Leave.

</comment><comment><USER46> Think of it this way: if you are good, any place that wouldn't hire you is likely to be another place you would consider to have bad culture.

Besides that, if you think the culture is bad now, it's likely that you'll find similar settings intolerable after 6 months of sabbatical.

</comment><comment><USER47> _So the big question is: can I emerge from the other side of this and find great people to work with and cool stuff to work on?_

No matter how many times this gets asked on HN, the answer will always be 'it depends' and what it depends on is 100% you.

</comment><comment><USER48> As mentioned in other comments, 'it depends'--- not mentioned is that it depends (partially) on your age. Older is not better. 6 months probably won't hurt, a year, two years, more? Chances decline as you go.

</comment><comment><USER49> Good luck! If I knew then what I know now, I'd rethink it through several times over. But most probably I'd do it anyways.

</comment><comment><AUTHOR> Thank you everyone! I've enjoyed reading every post immensely and appreciate everyone's responses.

You guys are awesome!

</comment><comment><USER50> If you want to find great work, do that. Don't quit A to do B to get to C. Just quit and do C!

</comment><comment><USER51> I agree with everyone else: go for it. As long as our econoomy doesn't completely implode, you'll get another job. You will have a great reason for having "not worked" (so to speak) for 6+ months -- you were working on personal goals directly related to your profession.

Me? I lost my mom in my late 20s and couldn't work for about two years due to emotional overload. When I was ready, I worried about whether I could get another job. Turned out to be no problem; people readily understood personal tragedy, and were much more interested in what I was bringing to the table than whether I'd had time off.

As Towle_ said, if you have no dependents and won't be forced onto the street due to lack of money: go for it.</comment>


Maze Tree - <AUTHOR> http://bl.ocks.org/mbostock/061b3929ba0f3964d335 <comment><USER2> One of the coolest things about this gist is how little code is used for the animation; basically just these lines:

        d3.selectAll(nodes).transition()
            .duration(2500)
            .delay(function() { return this.depth * 50; })
            .ease("quad-in-out")
            .tween("position", function() {
              var d = this, i = d3.interpolate([d[0], d[1]], [d.y, d.x]);
              return function(t) { var p = i(t); d.t = t; d[0] = p[0]; d[1] = p[1]; };
            });

The tree layout auto-magically gives every node a depth property, we delay the transition by an amount proportional to the depth, and then over the course of two-and-a-half seconds tween the line segment into the new position. Simple and effective. The hard part is generating the maze.

</comment><comment><USER3> It's not clear to me whether the tree is mapping the paths of the maze or the walls - the transformation makes it appear as though the walls are being mapped but that doesn't make sense.

I wonder if this works backwards - given a tree could you construct a maze? efficiently?

<comment><USER4> It's the paths. You can see another example of a maze here:

[http://bl.ocks.org/mbostock/11357811](http://bl.ocks.org/mbostock/11357811)

I made the paths thin (1px instead of 4px) to make it easier to see the tree on top of the maze. But to avoid the path/wall ambiguity, maybe it'd be better to start the paths 4px wide, transition to 1px, and then transition to the tree layout…

<comment><USER5> Great work Mike.

It would be great if you could add more comments to the code, or a simple separate guide for each of the projects. They are all amazing, and I'm sure many would want to learn more.

<comment><AUTHOR> Check out this page [http://bost.ocks.org/mike/](http://bost.ocks.org/mike/) if you haven't yet, there are several in-depth posts on how to do things with D3, also read the fantastic D3 docs.

I guess making a guide for every Gist Mike posts would be quite demanding regarding his output, in the end even his day only 24 has hours.

</comment></comment></comment></comment><comment><USER6> I did something similar more than 20 years ago using Prim's algorithm for the minimal spanning tree. Spanning trees are not the most efficient way to generate a maze but I was studying CS and the maze generation was a good incentive to actually translate the textbook pseudocode into actual C (without the ++). I didn't do the fancy tree animation but you'll excuse me as all I had was a 80x25 ASCII terminal so it was probably a 40x12 maze :-) However I added a nethack style @ character and the hjkl keys to move from the entrance to the exit in the shorter time plus a leaderboard shared across all the users of our Unix system. Our terminals had a repeat key (i.e. keys didn't autorepeat, you had to press the repeat key as if it were a shift to make a key repeat) and that added to dexterity required to go through the maze quickly. The fastest time was in the 5-6 seconds range. I'm afraid the source algorithm has been lost on some tape long ago.

</comment><comment><USER7> And that is how you get undergrad students interested in graph theory.

</comment><comment><USER8> Old simple maze generator algorithms: [http://imgur.com/a/5miDZ](http://imgur.com/a/5miDZ)

</comment><comment><USER9> Looks cool, but I'm a bit confused about the colorized examples. It seems like in some of the examples, there are blocks that are colored red that are further away in maze-distance than other blocks that are green, etc. Do the colors roll-over after a certain distance?

<comment><USER10> Yes, they do. The `c0 = d3.hsl(d0 % 360, 1, .5).rgb();` line (IIUC) is doing a modulo-360 operation, so the colors cycle.

</comment></comment><comment><USER11> Frankly, that is true art. Inspired.

</comment><comment><USER12> the things people visualize w/ D3 never ceases to amaze me

<comment><USER13> The dirty secret about D3 is that almost everything cool you have seen it used for was built by Bostock.

<comment><USER14> ... this could be because D3.js was invented 3 years ago by Bostock, his Stanford professor, and his classmate ... maybe.

[http://en.wikipedia.org/wiki/D3js#Context](http://en.wikipedia.org/wiki/D3js#Context)

<comment><USER15> I think the point was that D3 is incredibly powerful, but maybe a litte difficult to use, and counterintuitive at times, so only few people can get the full potential out of it.

<comment><USER13> I wasn't meaning to criticise the library. The point, if any, was just jabbing at how he is constantly gifting us with ingenious demos, but markets in such a way that people tend to think "D3 is a great library because it lets you do this" rather than "Mike Bostock is a genius for coming up with this."

</comment></comment></comment></comment></comment><comment><USER16> Does this maze have a single unique path through it?

<comment><USER4> Yes, there is a unique path between every pair of nodes because the maze is also a spanning tree. Here's another view which shows the path between the node under the mouse and the root of the tree:

[http://bl.ocks.org/mbostock/6ba3a15c9f08742b3a80](http://bl.ocks.org/mbostock/6ba3a15c9f08742b3a80)

<comment><USER17> I don't understand this - I saw the Wilson's algorithm [1] generate huge loops as it hit the existing maze. Does it subsequently erase them?

I couldn't see how the tree could possibly handle loops.

[1]: [http://bl.ocks.org/mbostock/11357811](http://bl.ocks.org/mbostock/11357811)

<comment><USER18> Where do you see the loops?

The algorithm uses "loop-erased" random walks.

It starts at a node that isn't in the tree and randomly walks.

If it hits itself while randomly walking (remember it isn't part of the tree yet), it erases the loop that it created and continues walking from that node again.

If the walk hits the tree, connect the walked path to the tree, pick another node and start again.

</comment></comment></comment></comment><comment><USER19> I'd like to see the tree starting from the other end of the maze too.

</comment><comment><USER20> 'maze-balls!

</comment><comment><USER21> That animation is really freakin' sweet

</comment><comment><USER22> It would be even cooler if rather than it being all white it was colorized.

<comment><USER23> Reminded me of this little demo from the same author which did something like that:

[http://bl.ocks.org/mbostock/11167589](http://bl.ocks.org/mbostock/11167589)

Amazing examples all over that site.</comment></comment>


99 Cent iPhone Apps Not Significantly More Popular - <AUTHOR> http://www.mobileorchard.com/99-cent-iphone-apps-not-significantly-more-popular/

<comment><USER2> I don't think those charts show what he wants them to show. A 50 / 50 split between 99c apps and all apps over 99c shows how dominate that price point is. Free is also more popular than the other two options.

Edit: They don't quantify the number of apps in each category. It does show the number of popular apps on a logarithmic scale with the most popular apps overall being free, or 99c. Also there is also a huge gap between .2 and .5 on a logarithmic scale.

<comment><USER3> I think what he wants the data to show is that an app that's priced above a dollar can be at least as popular (and substantially more lucrative) as a 99 cent app. The distribution of popularity for >$1 looks indistinguishable from the popularity for <$1, in most categories. (excluding free in this)

That indicates that, even though there are a huge number of 99 cent apps, there isn't a strong correlation between that price point and the app's popularity/success. So a developer doesn't have to aim at the 99 cent price point just to make a profit.</comment></comment>


Ask HN: Looking for hacker/entrepreneur roommate in Austin, TX - <AUTHOR>

I'm looking for a roommate to fill in the second bedroom of my apartment in downtown Austin. I'm a 23 year old entrepreneur and student at the University of Texas. I co-own http://anticlothes.com and have a few projects on the side for fun and personal growth. I also love helping/consulting with friends' businesses, so you're welcome to pick my brain for ideas or ask for some design help with your own projects. I'm not too picky with who I room with, but it is important to find someone with the same drive and determination; it makes for a great atmosphere.
I'm looking for a new roommate because my current roomie, and friend, is moving out to live on his own while he grows his company, GoodPop (http://goodpops.com). It's been a great year working with him on his company and watching it grow as big as it has, and I hope I help my next roommate in a similar fashion. I play a lot of soccer, work out daily, love good food and a nice glass of scotch, and am very laid back and accommodating.
The apartment is 15 stories up, with a great view of Town Lake from every room. It's a 1,425sq. ft unit with granite counter tops and carpeted bedrooms, with a balcony facing Town Lake. The building has a great gym and pool, is right off the jogging trail, and is walking distance to 6th street. Equally as important, it's just down the street from the convention center for SXSW. The building is right off of I-35, so you can get to nearly anywhere in Austin within 15-20 minutes. We negotiated the price down before moving in, so I'd hate to move out from here; a comparable apartment goes for $300 more per person. Rent is $930/mo., and I'll pay utilities.
Local Map: http://tinyurl.com/3a3nqcb
Floorplan: http://tinyurl.com/2wo38g3
Pictures: http://tinyurl.com/2vyg7cj
If you know anyone in Austin looking, send them my way! :) Feel free to ask any questions in this thread, or via email steven.kovar [at] gmail.com. <comment><USER2> I've stayed in Steven's apartment before while working on Anticlothes. Great building and location in Austin. And he's a stand up guy and super talented designer.

<comment><AUTHOR> Thanks for the kind words Jon. Didn't expect to see you around on HN. :)</comment></comment>


Ask HN: AI more of Math or CS? - <AUTHOR> Hello, I am a University of Waterloo undergrad doing his second term and I am enrolled in the Honours Mathematics programme. After my first year (this term), I have to either choose a Major or I can transfer to CS. AI really interests me and someone told me that you either use AI or create AI. I want to help create AI and I am utterly confused if AI is more of Math or CS. During several employer information sessions, some employers say that stay in Math while some say that one should switch to CS. I recently read [1] and I am even more confused now. What are your opinions on this?<p>[1] https://techcrunch.com/2016/12/01/facebooks-advice-to-students-interested-in-artificial-intelligence/ <comment><USER2> Double major?

Seriously though, there are definitely elements of both involved in AI, but I don't know that there's much going on in AI that involves math beyond what you'd get in a typical C.S. curriculum anyway. And if you're worried about that, you could always go with a "major in C.S. and take as many maths electives as possible" strategy.

As noted in the linked FB thing, the key things you want are: "Calc I, Calc II, Calc III, Linear Algebra, (and) Probability and Statistics".

There's nothing to stop you from getting all of those while majoring in C.S. And here's the thing - the "other" stuff you get in C.S. will empower you in terms of programming and - for now - programming is how you do "experiments" in AI/ML.

As for majoring in Mathematics... I don't think it can ever _hurt_ to have too much math, and I wish I'd taken more maths classes in my own past. But I haven't seen much evidence to suggest that you'll use a lot of, say, complex analysis, or measure theory, or group theory in studying AI/ML. Note that that's not to say that I'm 100% (or even 2%) confident that you'd _never_ need those things. Given that measure theory is strongly related to probability, for example, it wouldn't shock me if some knowledge in that area did indeed prove useful somehow. But by and large, it seems to be the case that the core math needed really is Calculus, Linear Algebra and Probability/Statistics.

<comment><AUTHOR> Thanks for such an elaborate explanation. And yes, we do take Calculus, Linear Algebra and Stats as part of the CS curriculum.

</comment></comment><comment><USER3> Can you do a dual degree or one minor another one major?

<comment><AUTHOR> Yes, there's an option to do a CS Minor here. But the thing is that I am more of a coding kind of person and I don't really like Math that much.

<comment><USER4> A math major is for people who just love math. I think you would be happier as a CS major. You should take as much math as you reasonably can because much of it will help in CS.</comment></comment></comment>


Making A Living (Comfortably) On The App Store (aka The Numbers Post #2) - <AUTHOR> http://gamesfromwithin.com/making-a-living-comfortably-on-the-app-store

<comment><USER2> I wonder if Flower Garden is an anomaly or if there are quite a few indie developers that Apple's money machine has "freed"?

Would be interesting if everyone was as transparent as Noel...

<comment><USER3> What's the point? It only attracts more competition. It's nice to be public when you can sell to your readers (hello Joel), but otherwise there is little direct gain in disclosure.

<comment><USER4> If you write about your app and release the numbers, you will get linked to from all sorts of places. So not just your regular users, but you will get new ones from people who don't normally follow you.

<comment><USER3> Mostly software engineers though - people notorious for not buying software. Pagerank is the only benefit you can get from it.</comment></comment></comment></comment>


Ask HN: Whats your stock portfolio/gains look like? - <AUTHOR>

My portfolio: http://i.imgur.com/aDJPg6Z.png
Held AAPL since last year. Got lucky with my NFLX timing. I bought GPRO mid-day on its first day, its the stock I'm least sure about so I may sell on any negative news.
AMZN and GOOG I guess I bought at peak prices, but I believe in those companies so I'm fine riding them out.
Yours? <comment><USER2> SPY 1 year return is 22%. It's cool if you want to buy single stocks and not index funds, but you should diversify your holdings. At least purchase 5 more names.

[http://en.wikipedia.org/wiki/Diversification_(finance)](http://en.wikipedia.org/wiki/Diversification_\(finance\))

</comment><comment><USER3> I'm a dividend investor, so I don't pay as much attention to big gains as long as a stock retains its value or goes up slightly and keeps paying dividends, I'm happy. Over the last 3 years, I've averaged 9% annual returns using a mix of REITs, other high yield dividend stocks, and Dogs of the Dow.

<comment><USER4> I've been looking into REITs. I'd love to get some advice from you. Maybe shoot me an email if you don't want to comment on here.

</comment></comment><comment><USER5> I am wondering what is the purpose of such "Ask HN" question. Is it just your way of showing off that how good you are in picking stocks? Don't confuse luck for skills in the market.

</comment><comment><USER6> Index Funds -

401k (Schwab): SCHB, SCHH, SCHF, SCHC, SCHE

Roth IRA (Vanguard): VTI, VXUS, VNQ, VNQI

Taxable Brokerage (Vanguard): VTI and VXUS only

</comment><comment><USER7> XIV up 300% on my watch!

<comment><USER8> Nice gain. Do you hold it or do you trade it, say based on the market technicals and futures rollover curve?

I tried the opposite with UVXY and found it difficult to eke gains. I might sell everything and buy XIV or SVXY next correction lol.

<comment><USER7> I just hold. XIV does have violent downswings, but it tends to bounce back quickly because everybody wants to buy volatility after a market correction.</comment></comment></comment>


We Are Truly Fucked: Everyone Is Making AI-Generated Fake Porn Now - <AUTHOR> https://motherboard.vice.com/en_us/article/bjye8a/reddit-fake-porn-app-daisy-ridley <comment><USER2> If you're looking for a quicker summary of what's happening, there's a write up on r/cyberpunk[0] that was posted 3 days ago. There's a very specific flavor to the subreddit and the comments on that write up that might be satisfying for those that appreciate cyberpunk.

If it wasn't immediately evident, this is very NSFW.

[0] [https://www.reddit.com/r/Cyberpunk/comments/7sexm6/](https://www.reddit.com/r/Cyberpunk/comments/7sexm6/)

<comment><USER3> Wow I just went through this and the deepfakes subreddit, this has SERIOUS case of abuse all over it. How soon till high school kids bully peers over this? Or even teachers?

Blackmail, revengeporn, bullying, harassment. I'm a bit shocked right now at how real it is. I saw one link that was almost undetectable even with very complicated movements. We need some regulations over this as soon as possible to prevent abuse.

<comment><USER4> Actually I was thinking it would do exactly the opposite - even if a legitimate tape is leaked, now the victim can say, "that's fake" and it will be completely believable.

<comment><USER5> > now the victim can say, "that's fake" and it will be completely believable

Believable, perhaps—but no less humiliating.

</comment></comment></comment></comment><comment><USER6> This is probably NSFW and should be flagged as such. While it is a technical subject (the video "photoshopping" technology) the examples used render the article difficult to view at work. Especially if company firewalls are doing text searches for keywords.

<comment><USER7> People shouldn't be surfing Hacker News at work anyway, and the title should make the nature of the content obvious.

<comment><USER8> Back to work you slackers! Who said you could surf the Internets while you eat lunch at your desk!!!

</comment></comment></comment><comment><USER9> Someone should build the app that replaces one actor's face with the viewer's own face, rather than a celebrity. It could 3D-scan the viewer and automatically find videos with sufficiently similar actor bodies. Then you could watch yourself interacting with the other actors.

Depending on the personality of the viewer, it would be either the best or worst thing they'd ever seen.

</comment><comment><USER10> I fear a future in which recorded evidence of misconduct cast a shadow of doubt of equal size.

<comment><USER11> It just means that image forensics will be a much more profitable business in the future than we probably thought it before.

\+ don't forget that if the source "vehicle" video is found, then it's a proof against who filed it, so it might not worth the risk.

<comment><USER12> I was thinking the same thing, at least in the US it will expand the shadow of a doubt, as any doctoring could lead to inadmissible evidence.

</comment></comment></comment><comment><USER13> I can't wait for the damning Donald Trump video to finally come out only to now be loudly rejected by him and his followers as fake news because "anyone can do it with an app!"

</comment><comment><USER14> Maybe this could finally bring the use of cryptographic signatures into the mainstream. An additional incentive might be that they could even be used to "cheat" when unfavorable news came out: an organization that routinely signs all of their press statements and internal documents could disavow any unsigned leaks, perhaps.

</comment><comment><USER15> They didn't show or even mention the highest quality fakes of huge celebrities that have been seen on /r/deepfakes like Katy Perry or Scarlett Johansson.

I wonder why? I thought those names were way bigger than Daisy Ridley or Jessica Alba.</comment>


New model may explain emergence of self-replication on early Earth - <AUTHOR> http://phys.org/news/2015-07-life-emergence-self-replication-early-earth.html

<comment><USER2> Although not a chemical mechanism, it seems that a randomly generated set of initial operations once executed tends to develop into self-replication: [http://diyhpl.us/~bryan/papers2/ai/The%20evolution%20of%20se...](http://diyhpl.us/~bryan/papers2/ai/The%20evolution%20of%20self- replicating%20computer%20organisms%20-%20A.%20N.%20Pargellis.pdf)

Ligation (append) is a necessary precursor operation, I think.

<comment><USER3> So once we go deeper into computer generated programs, we might accidentally start creating self replicating programs...

<comment><USER4> Accidentally?

<comment><USER3> Yes, that was the point of my post. I think it's obvious that everyone on Hacker News is aware of purposefully created computer viruses and worms.

</comment></comment></comment></comment><comment><USER5> I've seen every single detail in the phys.org previously described, including the quantitative part. THis is spectacularly unoriginal reporting on really duplicative science.

<comment><USER6> Speaking only for myself, I have not read about this specific research before, so I thought that the article was fascinating. It is unfortunate that you though that this article about a proposed mechanism for the origin of life on Earth was spectacularly unoriginal.

<comment><USER5> I wouldn't have a problem with it if the authors didn't claim it was novel or original. As an introduction to the concept, the article is fine.

</comment></comment></comment><comment> java-man Self-sustained Replication of an RNA Enzyme (2009)

Tracey A. Lincoln, Gerald F. Joyce

[http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2652413/](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2652413/)

</comment><comment><USER7> I'd like to see a creationist response to this. They tend to either reduce to "No, because the book says otherwise" or be legitimately inventive.

Wonder what a creationist lab would look like...

<comment><USER8> As a creationist who has a very rudimentary understanding of chemistry and biology, I can tell you that my first reaction to this model is to look at its apparent reliance on a fairly complex template and assume (correctly or incorrectly) that this template is too complicated to be derived by chance in a single, finite universe. I then decide that I would rather believe in an infinite God rather than an infinite number of theoretical universes, and at which point I stop reading hacker news and go back to work. Please note that this comment is intended to provide a creationist's initial reaction to an article for anyone curious, not to debate the origin of the universe.

<comment><USER9> What leads you to think that the templates are necessarily very complex?

In my reading, the models requires the presence of polymers, let's call them _A_ , _B_ , and _T_ ; and a cyclical mechanism that causes these polymers to alternately bind to each other and release each other (through chain to chain ionic or hydrogen bonds).

The polymers themselves are formed of chains of smaller monomers covalently bonded to each other.

 _A_ , _B_ , and _T_ are floating around, and occasionally bind to each other. The nature of our template _T_ is such that both _A_ and _B_ can bind to it at the same time. Importantly, _T_ doesn't need to be much larger, or more complex, than _A_ or _B_ , just able to bind to one of the ends of each.

So we have our polymers floating around looking something like (this is my purely made up notation):

        *A*: AAaAaA   *B*: BbbBbBB

        *T*: TTaAabBBT

They move into the night cycle, causing them to bind to each other with ionic or hydrogen bonds:

        AAaAaA BbbBbBB
           ||| |||
         TTaAa-bBBT

Due to the ends of the _A_ and _B_ chains now being so close to each other, they form a covalent bond, resulting in a new polymer chain _C_ :

        *C*: AAaAaABbbBbBB
                ||||||
              TTaAabBBT

The day cycle comes around and the template breaks away from the newly created chain.

Thus the template is acting like a catalyst, able to create many identical copies of this polymer _C_. _C_ is a more complex polymer than either _A_ or _B_ and could easily become a template itself.

It's not much of a stretch to then consider a polymer which either was a template for itself, or was part of a sequence of templates that produced each other.

To your complexity point, it doesn't seem obvious that these templates are necessarily "fairly complex" \- indeed if you admit the existence of polymer chains in the first place the ability for one of them to act as a template seems trivial.

</comment></comment></comment><comment><USER10> Of course! The Earth is a giant thermocycler.

</comment><comment><USER11> Shoot, I was hoping this was going to be about Jeremy England.</comment>


Microsoft posts anti-iPhone Windows Phone videos - <AUTHOR> http://www.youtube.com/user/windowsphone/videos

<comment><USER2> these are so bad, for so many reasons.

Although, it is funny to watch how Microsoft behaves as an underdog. So desperate.

Companies with 4% marketshare on smartphones can talk all the shit they want because they've got nothing to lose.

</comment><comment><AUTHOR> ....and they yanked them.

That was quick.</comment>


Microsoft is closing all of its stores - <AUTHOR> https://www.cnn.com/2020/06/26/tech/microsoft-stores-closing/index.html <comment><USER2> Discussion is ongoing here: [https://www.theverge.com/2020/6/26/21297400/microsoft- retail...](https://www.theverge.com/2020/6/26/21297400/microsoft-retail- stores-closing-cities-open)</comment>


KLEE: A symbolic virtual machine built on top of LLVM - <AUTHOR> https://klee.github.io/ <comment><USER2> This is the KLEE project mentioned in "The PhD Grind" book [0], which was also on HN recently. I recommend reading it for a behind-the-scenes look at the effort required to complete a PhD in CS.

[0] [http://www.pgbovine.net/PhD-memoir.htm](http://www.pgbovine.net/PhD- memoir.htm)

</comment><comment><USER3> I just played with this just a few days ago to solve some crackme challenges. It is pretty cool: decompile the binary, use KLEE to symbolize inputs, ..., profit.

There is also DeepState[0], which is quite similar (provides a higher abstraction) for test harnesses

[0]: [https://github.com/trailofbits/deepstate/](https://github.com/trailofbits/deepstate/)

</comment><comment><USER4> This looks incredible. Will definitely be playing with this in the coming days.

<comment><USER5> If you think that's cool, you might be interested in S²E: [http://s2e.systems/](http://s2e.systems/)</comment></comment>


San Francisco Police Raid Journalist's Home After He Refuses to Name Source - <AUTHOR> https://www.npr.org/2019/05/13/722745266/san-francisco-police-raid-journalists-home-after-he-refuses-to-name-source <comment><USER2> I tweeted @SFPD yesterday my disgust at their behavior. I feel it's all that twitter is good for these days, registering displeasure at companies and agencies. Will they do anything about it? Likely not, but if enough people show anger at them, maybe the Mayor will fire the police chief.

<comment><USER3> yeah i don't really understand this. Like why do you need a whole squad and feds to break down his door with a battering ram for a single "leaked" document. Could have just knocked and said they had a warrant.

<comment><USER4> Police state gotta exercise that power.

There are hundreds to thousands of abuses of law enforcement power like this per year where simple warrant serving is executed by a swat team in order to justify the budget of the swat team.

</comment></comment></comment><comment><USER5> Not defending the police, but how do you establish status as a freelance journalist and does that convey protections that California law provides regular journalist, those in the direct employ of a news organization.

by many measures we all are in this day and age. does it require having successfully sold a story to an established news organization?

<comment><USER6> Is a freelance developer not a developer?

Freelancing is nothing really new. It may be more common.

<comment><USER7> I agree, in journalism especially it seems to be especially common?

</comment></comment></comment><comment><USER7> You can't underestimate the danger of a journalist. They're known for accumulating guns and threatening violence.

Oh wait, that's militias</comment>


The One-Page CPU - <AUTHOR> http://recc.robertelder.org/op-cpu.txt <comment><USER2> 2^9 (512) registers. Isn't that a bit overkill?

Only reason to have lots of registers is so compiler can extract more instruction-level parallelism. But 512 is way past the amount needed for significant benefits.

Downside of lots of registers means that the multiplexers for register bank will have to be really big, thus slow, and that will dramatically limit the clock speed.

Another downside is that instructions are unnecessarily large. That causes unnecessary pressure on the instruction cache.</comment>


Ask HN: Do you believe in ghosts? - <AUTHOR>

Just wondering what HNers think about existence of ghosts? Do you believe in it? Any personal experience if any? Do you know about any scientific studies about it?<p>My take is that I'm not sure about it. Absence of proof can't be proof of absence. <comment><USER3> Do you believe ghosts are topical at HN?

> Absence of proof can't be proof of absence.

Learn about the null hypothesis -- the scientific precept that assumes an idea without evidence is false. It saves huge amounts of time in the game of sorting out everyday reality.

<comment><AUTHOR> > Do you believe ghosts are topical at HN?

For the Hacker News Guidelines - "anything that gratifies one's intellectual curiosity". That's probably the reason I thought it is OK to post this question on HN.

<comment><USER3> > For the Hacker News Guidelines - "anything that gratifies one's intellectual > curiosity".

They also say: "If they'd cover it on TV news, it's probably off-topic."

The phrase you quoted from the guidelines probably causes more confusion than it prevents, because IMHO it means anything that would gratify a hacker's curiosity, but it isn't worded that way.

I always obey the writer's rule -- before posting something, for a while I read what others post about, to find out what's really topical.

</comment></comment></comment><comment><USER4> Yes, as psychological phenomena -- that is, I believe that people actually do see ghosts, sometimes.

The shortcuts our brains take to make sense out of the flood of input from our senses mean that it's quite common to legitimately see things that aren't there, though.

So I certainly don't believe there's anything actually there -- no troubled spirits, no influence from beyond the grave, any of that nonsense.

If someday there's any supernatural phenomenon that stands up to a James Randi style test, I'll wonder what's going on. As it is, every "ghost story" I've ever encountered is far more easily explained by brain tricks and human error than anything remotely supernatural.

"Absence of proof isn't proof of absence", but that also applies to teapots orbiting the Sun between Earth and Mars, of course... there's no sense in spending time chasing down silly ideas that aren't even rationally coherent when you dig into details.

</comment><comment><USER5> No.

[http://www.amazon.com/The-Demon-Haunted-World-Science- Candle...](http://www.amazon.com/The-Demon-Haunted-World-Science- Candle/dp/0345409469)

(Also, for fun, I have tried actively seeking them out by staying in places that are on top ten lists for hauntings. In some cases I've gotten to spend the night thanks to cash bribes. Unlike TV, you know what happens in a really "haunted" place with no electricity? Boredom and darkness. Mostly darkness. )

</comment><comment><USER6> It depends on how you define 'ghosts'.

I'll tell you a little story. In March this year someone I loved deeply died. It was the woman which I would marry this month.

I've bever really believed the fact that there are people who could speak to those we have lost. The fact that my girlfriend died did something to me that at first was something that came to me as the shock. But being advised by a remarkable friend made me realise that it wasn't my mind playing tricks. And after reading about it, going to her grave and being completely open for what I felt, I saw what happened. She wanted to talk to me, to ask me a final question. And this was the only way to ask that question.

Is it a ghost? Yes. But not the spooky one. And not everyone can see or talk to them. If you want to block them, they will ignore you. And believe me when I say: it's not a blessing or gift. It's a world full of pain.

Because of the nature of the subject, it's very hard to find people who are willing to talk about this. Business will use it to make money, and science ignores it, because it's difficult to test it.

Who am I? 26 years old, C# programmer for a multi-million company. A year ago I laughed at your question. Now I'm answering it, because you asked for it.

<comment><USER7> Sorry for your loss.

</comment></comment><comment><USER7> This is really more a philosophical subject which really are looked down upon on HN as HN tends to trend towards science. To the extent that it attracts a portion of it's readers that see no value in philosophical pursuits. The reality is at some point though we all take philosophical leaps, some are more aware of that fact, some intentionally deny it and yet others are comfortable with the fact that every day we rely on philosophical reasoning. The following is a good read about the concept of Physicalism often confused with a materialist view <http://www.serendipity.li/dmt/physicalism.htm> (for the record, I don't advocate for psychedelics, but good points are made in this article about our assumptions based on the tangible, I also don't personally agree with every conclusion drawn in the article but it suffices as an example of my point, that there very well may be stuff beyond the human experience and the testable)

That being said, I personally feel that the possibility that their is extra dimensional consciousness beyond what we are currently able to experience on a day to day basis given that we are constrained to 3 and 1/2 dimensions, and have no way to even conceptualize the extra dimensions that are theorized to exist. Now in saying that, just because I hold out the possibility that such could exists does not mean that I subscribe to ghosts and seances or ingest hallucinogens in blind faith that it is opening up the ability to perceive additional dimensions, but I do feel that one cuts out a lot of possibility when they take to rigid of a Physicalism type view. The more we learn about reality the less real it becomes. It's fascinating to ponder, but the problem with pondering is everyone has convictions one way or another yet no one has proof, so there is never a resolution, so I tend to take the view that it is something best discussed among a group of peers that are interested in pondering the currently unresolvable. There are just too many opinions one way or another on a forum such as HN for the subject matter.

</comment><comment><USER8> OK - here's one for Halloween. My niece asked for some sage to smudge her house - I didn't think any thing of it. Anyhow - during conversation I asked how my nephew is doing, he's 4. She said he won't sleep in his room for the last week. I said 'oh? is that bad?'.

Apparently she heard someone upstairs walking around then all of sudden he started screaming hysterically. She said it took her 10-15 min to bring him awake, into full consciousness. He said someone was in his room - on the ceiling. I'm like "Uhh...hmm that's weird".

She goes on to tell me he's had an imaginary friend - Maria. He's seen him talking to her, playing with her etc... I said "when did this all happen?". She said after her mother-in-law gave her an old chair that belong to a great grandmother or something.

Then she goes on to tell me that her mother-in-law came over to drop off old picture for her husband. One of them my nephew points out "Maria!"...his imaginary friend, the lady who the chair belonged to...

Needless to say - she doesn't think Maria is bad - but perhaps someone else is there or got invited in.

After smudging the house - which she said was very odd because the house started creaking like crazy, everything has subsided - and they got rid of the chair.

Anyhow - I considered getting the chair to play a prank on some friends - <USER2> if anything happens to them.

Always hear of ghost stories but kind of cool when you bump into one so close.</comment>


More than $215,000 stolen from Bitcoinica in Linode incident - <AUTHOR> https://bitcointalk.org/index.php?topic=66979.0

<comment><USER2> Ah, Bitcoin. Security amateur hour. Again.

Seriously, trusting ~$200 000 to the security of a general-purpose VPS provider? With no failsafes of any kind? Ever notice how real banks don't do that? Even if you don't want to build your own data center, you could _at least_ chat with <http://www.thebunker.net/colocation/> or another properly- paranoid data center.

At least _these_ guys didn't leave _all_ their Bitcoins on this machine...

<comment><USER3> > Ever notice how real banks don't do that

<https://news.ycombinator.com/item?id=3656063>

</comment></comment><comment><USER4> So they looked for connections to the IRC channel bitcoin uses to find linode IP's (or portscanned linode, but why bother when every bitcoin daemon hangs out advertising its IP on IRC?).

And they stole from at least 3 systems. One had $5; one $15 thousand, and one had nearly a quarter $million. Which makes me curious why they bothered with the $5 account at all. It's like robbing a bank, and stopping to smash a gumball machine in the lobby on your way in or out.

My guess is that the attackers have a fully automated exploit payload that transfers the bitcoin out. And ran it on every system they could get on, indiscrimitely. So this is not a one-off. I'd be very cautious about running the bitcoin daemon, at least without setting noirc=1 in its configuration.

<comment><USER5> My guess is that the attacker doesn't know how many bitcoin were stored on the target's.

<comment><USER4> The alternative is that they knew Bitcoinia was hosted on Linode, and when this customer service exploit became available for purchase on the 0day market (or whatever), they went in explicitly targeting Bitcoinia, but not knowing which IPs on Linode belonged to it. It's not clear if Bitcoinia separated its web server VM from its bitcoin VM, and if the attackers didn't know, it'd be best to target all the IPs.

<comment><USER6> Bitcoinica's web server is hosted on rackspace (through Heroku). They would likely have been able to determine that bitcoinica's bitcoin daemon was hosted separately on linode, by watching the ip addresses broadcasting withdrawal transactions. It is likely that bitcoinica was the target in breaching linode.

</comment></comment></comment></comment><comment><USER7> I'm not trying to troll here at all, but if "$215,000" worth of bitcoins are stolen, do the authorities investigate as they would $215,000 worth of cash?

Is there taskforces that recognizes this? or is it just the wild west?

<comment><USER8> Unlikely. It's worth $215k on some open markets. But that's highly variable, so it's not obvious that it's actually worth that amount of USD.

And yes, it is like the Wild West. That's part of the point of BitCoin, there are no chargebacks, and no-one can freeze your account. Once the money moves, the money moves. This has disadvantages if you are the victim of a theft (like this) and you're bitcoins are essentially gone.

</comment></comment><comment><USER9> I feel incidents like these raise an interesting question about the long term credibility of any crypto currency system. For instance if a traditional nation state felt its monetary system was threatened by a crypto currency could they employ an organization such as the NSA to attempt to undermine the credibility of the crypto currency in this way? I know its a very speculative proposition but it makes one wonder if even in a geographically agnostic realm like the internet the force of a nation state is required to maintain crediblity/stability for a new money system.

<comment><USER10> Much larger thefts than this in $USD happen pretty frequently, you just don't hear about them that much. I don't know how the government could guarantee any credibility (Edit: beyond already existing measures, this was theft so if the thief is caught there is punishment available and if Linode was negligent they might also be liable)--the stability is inherent in the network. All the BTC thefts have been to improper security measures taken by the owner(s) and in some cases a misplaced trust in the security of others. Anyone or group with over 1000 BTC in one place should be taking way more security precautions than these guys.

</comment></comment><comment><USER11> I am not well-versed in the technical details behind bitcoins, but does the nature of bitcoins make them vastly easier to track than normal currency? E.g. if the attackers try to cash out or transfer the stolen bitcoins, is it much easier to flag them?

<comment><USER4> Where the money goes is all publically available, yes. But it can be split up and fed through any number of accounts (you can make as many accounts as you like) to try to launder it. Also, does Silk Road care where the bitcoin being used to buy drugs came from?

<comment><USER5> I believe Silk Road is operated by actual agorist, or market anarchists to be more general. If that is true, even they would care about where the money comes from, especially if it is stolen money.

</comment></comment></comment><comment><USER12> $215,000 is bigger than the size of an average bank robbery ($5,000) source: [http://www2.fbi.gov/ucr/cius_02/html/web/specialreport/05-SR...](http://www2.fbi.gov/ucr/cius_02/html/web/specialreport/05-SRbankrobbery.html)

This reminds me of a tangentially related incident where government servers were physically stolen by people dressed up as technicians. Even if you co-lo a dedicated server, if you store enough coins there, it becomes an attractive target for an attacker with some inside help.

<comment><USER13> This is not an average Bitcoin "robbery" either.

</comment></comment><comment><USER14> Aside from all the issues that plague bitcoin, what would be a more secure way of 'touching' the wallet.dat file?

Keep in mind that:

1) IO is expensive

2) the file will not be encrypted

3) the file will/should not be hosted on the same machine

4) the file will be accessed in excess of 1,000,000 times a day; maybe more.

The only thing I can think to do is do all the transactions with imaginary bitcoins until the end of the day then, at night, push all the transfers; almost like banks do.

<comment><USER15> It seems like it would be feasible to split the coins across wallets, with more hassle surrounding the wallet with most of the coins.

I can't think of any huge disadvantage to manually managing the float on the transaction server.

</comment></comment><comment><USER16> So I've a question about situations like this. I believe that a chain of transfers can be created with bitcoin. So couldn't a blacklist be created? That would allow users to ignore illegally obtained coins?

<comment><USER8> In theory yes, in practice no. There is nothing in the bitcoin design to allow this. The only real way to do it is to fork bitcoin and to get everyone to change to your new rolled-back block chain. Not everyone will agree (since co- ordinating all these people to change at about the same time is hard), and hence you'll have 2 different versions of bitcoin.

This also removes features of bitcoin that some view as advantages, namely that there are no chargebacks and no-one can forcibly remove your funds. In bitcoin, once you have it, no-one can take it from you (unlike, say, paypal). This has disadvantages if you're the victim of a theft. Bitcoin is also a decentralised system, so you'd have to convince everyone that you are the victim of a theft, and that these transactions are to be rolled back. Other wise someone could pay for a service in bitcoins, then try to get everyone to roll back the transaction, and hence deprive someone of the bitoins.

</comment></comment><comment><USER17> No dollars were actually stolen. Dollars are a real currency, the kind you can put in real banks so this kind of thing never happens to you.

<comment><USER18> I see what you're doing, you're being purposefully condescending. You aren't dumb enough to actually believe that something people trade for real dollars has absolutely no value. Whether you like it or not, people do use Bitcoins and a value can be assigned the same way a super model's legs can be insured for a value. Deal with it.

<comment><USER19> Yes, he's egging the crowd on, but his comment did make me wonder what the legal ramifications of someone stealing bitcoins are. If one of the account holders tried to take Linode to court, do you think a US court would even acknowledge the value of a digital currency?

<comment><USER20> China doesn't acknowledge virtual theft, which caused some problems here:

(<http://news.bbc.co.uk/1/hi/technology/4072704.stm>)

But a later case said that virtual property should be protected by law:

([http://news.xinhuanet.com/english/2009-05/24/content_1142726...](http://news.xinhuanet.com/english/2009-05/24/content_11427265.htm))

Dutch authorities arrested someone for virtual theft:

(<http://news.bbc.co.uk/1/hi/7094764.stm>)

Here's another Dutch case, involving real world violence, which went to their supreme court:

([http://madisonian.net/2012/02/01/dutch-supreme-court- decides...](http://madisonian.net/2012/02/01/dutch-supreme-court-decides- virtual-theft-case/))

That last one mentions US case about domain names.

I'd be really interested to hear from previous US court cases, or from lawyers, about this.

<comment><USER8> A lot of companies that deal in 'virtual goods', e.g. World of Warcraft, don't like the idea that the bits are property, because then it's hard for them to take the bits away from people (say for cheating), or if they want to shut down the servers etc.

</comment></comment></comment></comment></comment><comment><USER21> I wish people would quit using Linode. They have a track record of having security issues, they are not PCI compliant; and unless they replace every single last BTC, I am going to just go ahead and state they never did care about their customers.

I just can only hope the attacker spends the BTC instead of burns them: burning would do far more damage to Bitcoin than just stealing them.

<comment><USER22> > they are not PCI compliant

They're a VPS host. I mean, cats aren't PCI compliant either, but it doesn't say much.

You shouldn't be using a VPS for this sort of thing for many reasons, mind you.

<comment><USER23> It is possible for a VPS host to become PCI compliant. Amazon EC2 is, for example.</comment></comment></comment>


On Making Socialcam's User Interface (Or, The #%$&ing Red Line)  - <AUTHOR> http://blog.socialcam.com/on-making-socialcams-user-interface-or-the-in

<comment><USER2> >> There is no doubt that Socialcam looks much better with the red line in place than without. So we needed to keep it.

Let me just say that if it's that subtle a detail, you'd rather spend engineering effort on something that gives you a greater return on investment.

Is the red line going to make the program functionally better? Will it increase reliability? (It'll probably reduce it if not coded properly) Will it add significantly to user-delight?

While it is useful to know _how_ to do what you did, this is, in my mind, a case of not knowing _what_ to do.

<comment><USER3> Details are important, even if they're as minor as this one.

</comment></comment><comment><USER4> Couldn't you just draw the red line in drawRect of a UINavigationBar category? Then it'd appear in every navigation bar of your app, _in_ the UINavigationBar, and not lost in some other hierarchy anywhere else.

<comment><USER5> My thoughts exactly. One reason against this is that it changes every single one of your bars. However, the way around it is to tag each navigation bar with a different number and use that conditional in the UINavigationBar category.

Though, there's probably a reason they didn't go with this. Any ideas?

<comment><USER4> Besides your point, the only other downside is that the red line is _in_ the navigation bar, not directly below it. If it's a pixel or two tall it's probably fine but if it's 4+ pixels tall it'd probably make the vertical spacing of elements in the nav bar (titles, buttons) appear slightly misaligned.

</comment></comment></comment><comment><USER6> Great writeup!

Why didn't you guys just use interface builder? Not only does it speed up view building in general, but, as you claimed, it would have fixed this issue in particular.

<comment><USER7> My favorite quote on this:

"...there's no more reason to abandon IB than there is to forego compilers and write all your code with a hex editor"

[http://iphonedevelopment.blogspot.com/2009/10/dont-fear- inte...](http://iphonedevelopment.blogspot.com/2009/10/dont-fear-interface- builder.html)

Maintaining programmatically-generated views is _miserable_. But with IB, it's pretty simple. Wanna nudge that button up a couple pixels? Click. Drag. Done. Want to set up label and button appearances for multiple states? A few clicks save you several lines of code per UI object. As as mentioned in the above link, every line of code you don't have to write is a line of code you don't have to maintain/debug. The converse is a _huge_ volume of code across an app to do tedious layout stuff, which doesn't sound fun.

You also cut down on compile/debug cycles, thanks to skipping things like "Oh, fuck, I forgot to set that label's background to clearColor."

Perhaps best of all, IB will help you set up autoresizing masks for your views. This process is extremely counterintuitive to me and it's nice to be able to immediately test out my changes without having to build and run for each tweak.

<comment><USER8> IMHO IB is the equivalent of writing HTML in Frontpage. No one is saying we should abandon tools like compilers that make us more productive, people are saying we should abandon needless crutches like writing HTML with Frontpage. IB is annoying because it doesn't work all the time and there are a lot of limitations to it, I'd rather just not use it.

<comment><USER7> > IMHO IB is the equivalent of writing HTML in Frontpage

If that's true, why does Apple, easily the most experienced Cocoa developer of all, use nib files in its shipping products? What have you discovered about Interface Builder that the creator of the tools and frameworks doesn't know?

This isn't generated code. It's not even remotely like Frontpage. Again, from the above link:

"Interface Builder does not generate code. It doesn't create a forms file of any sort. What it does, is actually instantiate and configure the same objects that you use in your application to show your user interface. If you add a button to your application in Interface Builder, you're actually creating an instance of UIButton or NSButton. When you configure it, you're actually setting state on that button instance. Then, when the nib file gets saved, that button gets serialized into the nib file using NSCoding, exactly the way we persisted objects the archiving section of the persistence chapter in Beginning iPhone 3 Development. Basically, the nib loader is doing exactly what the code you would write to create and configure the interface object would do, down to the actual method calls used."

Except instead of a couple dozen lines of code, you have no lines of code – which strikes me as an excellent deal.

"If you're writing tons of code to implement your user interface, that's lots of code you have to write, maintain, and debug. The nib loading code is solid. It's been around darn near 20 years and is used in literally thousands of production applications, including most of Apple's applications. Apple very much "eats their own dogfood" when it comes to their development tools. If you look inside the bundles of an Apple application, the chances are very high that you will find some nib files in there."

<comment><USER9> A good majority of my interfaces are based on UITableViews of some form. Used them for forms, navigation, etc. IB doesn't help me model up some of the fairly static data sources I return. I end up getting 90% of my apps done without touching IB for that reason.

I'll use IB occasionally for some custom views but since I'm using dinking around with the CALayer level adding shadows effects, and handling rotation animations and resizes in custom ways it usually gets in the way. I honestly never feel like touching for a lot my stuff.

I also do a lot of custom views and the designer doesn't help me manage those as well. Before XCode 4, I could write IB plugins but those were removed in 4, so more and more I'm finding less use for it.

One neat trick though is that I'll create NIBs and run Nib2Objc to generate code that I'll fix up as needed: <https://github.com/akosma/nib2objc></comment></comment></comment></comment></comment>


Aim Small, Miss Small: Writing Correct Programs - <AUTHOR> https://www.deconstructconf.com/2018/stuart-halloway-aim-small-miss-small-writing-correct-programs <comment><USER3> Or like at my (giant) employer - aim for the Big Bang, ship nothing, frustrate everyone.

<comment><USER4> OMG -- agree.

"How about we fix 3 of 5 use cases in the next release and finish the harder ones later?"

"No, we have to fix them all at once."

<comment><USER5> INT. OFFICE - <USER2>

 _MRING 'S BOSS_

"Ah, I see. You missed last night's email. The number is now seven."

</comment></comment></comment><comment><USER6> Right now, this hits so close to home it's scary.

Personally, I'm always astounded that one would even need to explain the whole scientific debugging mindset explicitly. Then again, I'm regularly proven wrong when I eventually meet the next guy who would rather burn incense and read tea leaves for a week instead of using some sort of directed experimental approach. -_-

</comment><comment><USER7> His first part about "aim" is soooo dead on. It usually happens after I started coding. I find a slack message to a co-worker asking them how to do something, but then having to explain EXACTLY why I need to do this is enough to basically solve my problem. By the time I am done writing the message I have thought of the problem, the rationalle, the why, the where, etc (I don't want to just ask a question I can answer on my own), that I never send the message and thus rubber ducking succeeded.</comment>


Don't be an architecture hipster - <AUTHOR> http://blog.alexrohde.com/archives/382 <comment><USER2> "Hasn't won any coding competitions"

I can't think of a single thing that has less to do with actual delivery of software & is more likely to indicate some level of supposed "hipster-ism" than thinking coding competitions matter.

<comment><USER3> I thought a blog post about a hacker news discussion being submitted and voted up to the front page of hacker news was navel gazing; that last bullet point makes it an unintentional parody of our site culture. The void is staring at itself.

<comment><USER4> Thanks. I would have said the same but was way too polite.

<comment><USER3> I now see I'm being rude but I don't mean to be mean-spirited: I've behaved similarly. It's not the end of the world.

<comment><USER4> Not at all. I meant to say you nailed it. The mistake was mine in not putting it so succinctly first

</comment></comment></comment></comment></comment><comment><USER5> I clicked through to the article that "ultimately annoyed" the author -- I found it to be a pretty decent, high-level discussion of architecture patterns in the real-world (N-tier, monolith, microservices, event driven, etc). The names may indeed be "25-cent word for a 1-cent idea" but they also allow people to put a shared name to a concept. In reality, very few systems follow a strict set of patterns 100% of the time, but having a shared vocabulary is useful for communication.

The friction between "architecture astronauts" and in-the-trenches engineers is nothing new. I think the author has identified the age-old struggles of dealing with Big Design Up Front UML diagrams, overbearing adherence to named patterns, and the disconnect between design and implementation that can happen in any project that has more than one person.

I would challenge the author to spend time trying to build up the community rather than tearing down others. Help clarify the "unintuitive names for very simple ideas", be open to new ideas but think critically and share your thoughts. Coming up with a new way to categorize someone as a poser or misguided does neither.

(Aside, you may want to consider removing the gendered pronouns from your lists -- there are women engineers and architects of all skill levels. I'm sure there was no malice, but it's worth writing in a way that makes everyone feel included.)

<comment><USER6> Is there such a thing as "architecture ground controllers"?

<comment><USER5> Good question :)

That would probably be closer to a "tech lead" but, of course, it all depends on how your team or organization is structured and what arbitrary titles you may use. Someone playing the architect role while staying acquainted to the codebase has been the most effective method in my experience. Finding the balance between looking ahead at future work and needs and working with the team is one of the most difficult aspects of being an effective architect -- but if you can strike that balance, you have the makings of a very productive and happy team.

</comment></comment></comment><comment><USER7> This part:

"Know-it-all / hipster Probably studied philosophy, english, film-studies, or engineering."

should cause us to remember this:

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

"An ad hominem... is an attack on an argument made by attacking the character, motive, or other attribute of the person making the argument, rather than attacking the argument directly"

We should remember, when we see an argument that starts with such a lazy use of a stereotype, there is a good chance that we are looking at a bad argument.

<comment><USER8> From the author's blog:

"Self-taught all-around software-guy in his 20s. Just moved out to California. Passionate about software, psychology, self-sustaining systems, and business. Dabble in everything else (philosophy, go, reverse-engineering, painting, writing, chess, meditation, music, DVORAK). Preference for writing in fragments rather than sentences. ;)"

Obviously, philosophy is only worth attacking if you studied it formally.

<comment><USER9> I imagine software hipster-dom must be a bit like actual hipster-dom:

"lol, did you see that new hipster place with their freshly ground coffee/craft beers/ethical brunch/something gelato/ironic something."

"Yeah, totally. Bloody hipsters everywhere! Can't stand them..."

"..."

"..."

"Their brunch is pretty good though..."

"Yeah, well I mean everyone loves brunch..."

"And they've got this smokey larger thing which is totally the bomb!"

"I know! And they've got this crispy bacon thing you can get with the beer tasting menu...with references to my favourite internet/pop-culture thing in this delightfully subversive/kinda ironic way...like the thing I've got at home/on my desktop/on my desk"

"...We should totally check it out this weekend."

"Yeah...those hipsters though...can't stand em."

"I know. Bloody hipsters everywhere we go. What's up with that?"

</comment></comment></comment><comment><USER10> > _Gets very emotionally attached to programming decisions, even if they will > have no effect on the user._

Well, yeah? A lot of decisions affect the programmers — how easy will the code be to manage, extend, etc. Just because it has no effect on the user directly doesn't mean it isn't important.

> _Isn't actually very capable creating software (hasn't won any coding > competitions, has trouble with git reset, hasn't written any software that > people enjoy using)_

Coding competition wins are a prereq for being capable?

> _Probably studied philosophy, english, film-studies, or engineering._

This is absurd.

You're throwing out the good with the bad here. REST, microservices, SOLID, being passionate about the quality of the work are all _good_ things. That they're presented poorly, or being overused where they're not needed is a separate issue, but that doesn't make the points of those things less correct.

Frankly, the original article[1] that seems to be the source of this rant didn't seem well written, but this is hardly constructive criticism of it. The original comment[2] from the author of this post (mentioned in the post, but not linked, unfortunately) was better, and while I feel some of the pain lamented (people assigning terms to ideas so simple they're better expressed directly; inscrutable UML diagrams), this post simply seeks to brand those people with a form of ad hominem rather than engage in debate with them.

[1]: [http://www.firatatagun.com/blog/2016/01/09/analysis-of- softw...](http://www.firatatagun.com/blog/2016/01/09/analysis-of-software- architectures/)

[2]: [https://news.ycombinator.com/item?id=10872314](https://news.ycombinator.com/item?id=10872314)

</comment><comment><USER11> There is very little in this article that has anything to do with _doing_ architecture at all. This is all polemical griping about implementation—and that's developer territory.

Also, the initial dismissal about studying philosophy, English, film studies, or engineering—what the fuck does that have to do with anything at all related to software architecture? Sets an instant tone that what follows will likely be flimsy ad hominem arguments based on subjective shit the author personally dislikes. Useless.

<comment><USER8> From his bio page:

"Self-taught all-around software-guy in his 20s. Just moved out to California. Passionate about software, psychology, self-sustaining systems, and business. Dabble in everything else (philosophy, go, reverse-engineering, painting, writing, chess, meditation, music, DVORAK). Preference for writing in fragments rather than sentences. ;)"

So, philosophy is only bad if you study it in school!

</comment></comment><comment><USER12> This is a lazy blog post, and I hope this isn't used as a launching point for further discussion. The article in question is many times more substantive, and alexandercrohde rebuts with a caricature and no facts to anchor upon.

I'd also say that when people say things I don't understand in a domain that I'm interested in, that's normally a sign that there's a gap in my knowledge. Of course people bullshit competency, but I doubt it's through verbiage alone. Almost all the time, when I later go back to read what people were talking about, I come to understand that they were not bullshitters. In my experience, people who can talk in a complicated way without knowing what they're talking about are exceedingly rare. There are a lot of smart _and_ knowledgeable people all over, and it seems almost impossible to hide behind complicated speech, hoping nobody knows that you're ignorant.

People might have a mean attitude of "Either you keep up with the lingo of the field or don't", but that doesn't mean they're bullshitting. And it's better to use an established "25 cent" word than your own idiosyncratic "1 cent" word. I mean, how else is that person going to Google or later verify what you're saying?

</comment><comment><USER13>
        Loves UML making diagrams

Four years of university desperately tried to convince me that UML is 90% of real world coding. I'll remain happy to not see this be the case.

<comment><USER14> Fine, UML probably isn't the fix, but maybe it would be helpful if developers were able to communicate via drawing a consistent set of objects and interactions without having to explain themselves at a simple level.

</comment></comment><comment><USER4> From an architecture standpoint I'd agree that most of the author's points are lamentable - if indeed there are people that call themselves architects who exhibit those traits.

But I'd also say that several aren't really valid criticisms - (class vs functions, tail-call optimization, trouble with git reset, ...) as they don't really seem to be aspects/tasks that I would expect from an architect.

They look more like things that overblown software developers might do.

And on that last point "written software that people enjoy using" \- I don't think that is a good qualification for being an architect. There are plenty of people who can write software that end users love - but that is a total shitshow behind the browser.

<comment><USER15> what's the problem with "git reset"?

<comment><USER16> I know that every time I have to use it (which isn't very often) I have to look up WTF each switch does in the manual because there's no way I'll ever remember what "hard", "soft", and "mixed" are supposed to mean.

<comment><USER17> In [https://git-scm.com/blog](https://git-scm.com/blog), scroll down to "The Role of Reset" \- it's always helped me remember how reset moves up the various tree roles.

I will say, I personally rarely use --soft, it's either the default --mixed, or --hard in a more 'severe' case, so it's a bit easier for me to remember the roles and the relation to the flags.

</comment></comment></comment></comment><comment><USER18> Ehhh, OP's characterization of hipster seems a bit off.

> He may be likened to Dwight Shrute, or the comic-book guy.

OP's characterization sounds more reminiscent of the pedantic 'nerd' than of the 'hipster.' Take most hipster fads of the past decade -- trucker hats in the early 2000s, vinyl records, hand cranked burr coffee grinders, people dressed as lumberjacks and park rangers in Bed Stuy, 24 year olds dressed like your grandma in Portland -- and the key characteristic is the fetishization of a noble, yet obscure and disenfranchised past, a poetic revelry in faux poverty. This seems a bit off from the typical 'comic-book guy' stereotype.

</comment><comment><USER19> Expressing scorn towards people who didn't major in your field of choice: also pretty 'hipster,' I guess.

<comment><USER20> I hate when people use big words. Effing hipsters.

</comment></comment><comment><USER21> fighting hipsterism with hipsterism.

</comment><comment><USER22> Modifying Peguy: It will never be known what development fads have been adopted out of the fear of looking insufficiently progressive.

</comment><comment><USER23> Not quite related but right now I'm dealing with an infrastructure architect that a) refuses to document things because of some misguided sense that this will buy him job security and b) constantly chases the latest shiny tech without regard to how it fits into the overall system or ongoing maintenance and support. Frustrating to say the very least.

<comment><USER5> Change your job, or change your job.

You could discuss how the lack of documentation is causing the team issues; maybe even frame it in a way to highlight how documentation will make him more useful (more time to spend on architecture vs answering questions, better chance that his architecture will be implemented as designed).

Express your concerns about introducing new technologies -- something that I've had some success with is asking 'which library/framework/dependency will we able to remove if we add this new one?'. Propose that the architect allocate time to training the team or being on pager duty or fixing maintenance bugs if they feel strongly that a new tech is the best decision.

If that doesn't work and the situation is unworkable, then consider a move.

</comment></comment><comment><USER24> Can we please stop calling people who disagree with us "hipsters"? No one's disagreeing with you ironically.

<comment><USER19> Oh _sure_ they're not.

</comment></comment><comment><USER20> Wow. Impressive that the author is able to compress so much negativity and lazy thinking into that space. The attributes of an "architecture hipster" are an assortment of unrelated things that presumably annoyed the author at some point in the industry.

Read his code on GitHub for an extra giggle.

<comment><USER25> Have some stones and comment with a main account. His article resonates with many developers, that's why it's #1 on HN as of this comment. And throwing a personal attack because you stalked him online is pretty low and immediately telling.

<comment><USER26> Calling another poster a "stalker" for reading someone's code on github after that person condemns a lot of other people for being bad coders and asserts that they're better is totally bizarre. Are you the author of the original article?

<comment><USER27> I don't think Alex called anyone a "bad coder". He just seems to be calling a certain group of people (brogrammers?) out for being pretentious and ignorant.</comment></comment></comment></comment>


In depth look at the daily deals market in the Baltics - <AUTHOR> http://www.arcticstartup.com/2011/10/27/in-depth-analysis-into-the-daily-deals-market-in-the-baltics

<comment><USER2> Where is the data coming from? I'm a little surprised because I'm from Latvia and I knew about citylife and perkamkopa but this is the first I hear about cherry.

<comment><AUTHOR> The data is coming from Cherry Media Group, and they've collected it from publicly available figures.

<comment><USER2> As in, the data that the companies have published in their websites (calculated from all daily deals, taking in account price, discount and number of purchasers)?

<comment><AUTHOR> Yes, that's correct.</comment></comment></comment></comment>


Show HN: Shardus – first decentralized network capable of linear scalability - <AUTHOR> https://www.shardus.com <comment><AUTHOR> Check out a recent quarterly update from the Shardus Association at Capital Factory in Dallas, TX! [https://www.youtube.com/watch?v=K2pQZwcUgNw](https://www.youtube.com/watch?v=K2pQZwcUgNw)</comment>