The Awk Programming Language (1988) [pdf] - <AUTHOR> https://ia802309.us.archive.org/25/items/pdfy-MgN0H1joIoDVoIC7/The_AWK_Programming_Language.pdf <comment><USER2> I consider awk to be the most useful and underused language in the UNIX ecosystem. I use it daily to analyze, transform, and assemble data, and it always blows my mind that so few people really know how to use it at a decent level. This is an excellent book to give a real idea of what awk is capable of.

<comment><USER3> > it always blows my mind that so few people really know how to use it at a > decent level

Not nearly as surprising as it is to me that now that most developers have forgotten perl, they're turning to awk as an inspiring example of a bygone era.

Seriously: perl basically replaced awk in the mid-90's. It absorbed all the great lessons and added two or three dozen innovations. But it had scary syntax, so everyone used python (which did not replace awk very effectively) and forgot perl. So now we're back at awk. And the scary syntax is all in the Rust world.

<comment><USER4> Python was never intended to replace Perl. Perl was designed to extract stuff from text files. Python was designed as a scripting language for system programming. IM(Seldom Humble)O Python beat Perl for two reasons (a) batteries included (CPAN became a clusterfuck) (b) C API lead to stuff like SciPy, NumPy and Pandas.

FWIW I've used both Perl and Python professionally and Python rules.

<comment><USER5> > CPAN became a clusterfuck

This gave me flashbacks to installing some perl module and watching it download half of CPAN.

<comment><USER6> Still NPM is so much worse...

<comment><USER5> Those who don't learn from history etc.

</comment></comment></comment></comment></comment></comment><comment><USER7> I'll just share my biggest Awk-based project here: A tool that creates HTML documentation from Markdown comments in your source code.

It does essentially what Javadoc does, except it uses Markdown to format text, which I find much more pleasing to the eyes when you read source code.

The benefit of doing it in Awk is that if you want to use it in your project, you can just distribute a single script with your source code and add a two lines to your Makefile. Because of the ubiquity of Awk, you never have to worry whether people building your library has the correct tools installed.

It doesn't have all the features that more sophisticated tools like Doxygen provides, but I'm going to keep on doing the documentation for my small hobby projects this way.

[1] [https://github.com/wernsey/d.awk](https://github.com/wernsey/d.awk)

<comment><USER8> It is true that there exists _an_ awk most everywhere, but I've been burned a few times by the discovery that nawk (Solaris (dating myself a bit there...)), gawk (many GNU/Linux distros), and mawk (some GNU/Linux distros? Don't know where I ran into it, but I have in the last couple of years) all have subtle incompatibilities around the edges.

As I recall, gawk in particular has some extensions that are explicitly a superset of the standard funcionality. Which is great if you're only targeting gawk and know about it. It's less great if you _think_ you're only targeting gawk, and discover later on that there's a system with a different awk you need to support.

Your project looks neat, by the way. I'm looking forward to taking a closer look.

<comment><USER7> Yes, there are differences. I used only standard awk facilities, and tested my project with gawk, mawk and nawk.

I've also been burned when I discovered that Raspbian ships with an older version of mawk that did something differently in the way it processed regexen that caused my script to break.

</comment></comment></comment><comment><USER9> I had this exact book and used awk on DOS/Novell in the early 90's when scripting choices were pretty scarce. The writing is tremendous - a model of clarity, and worth reading just for that. Anything with Kernighan, Pike or Plauger as author is worth checking out just for the example of clear thinking.

</comment><comment><USER10> In 1996 I worked as a federal contractor for a US Army base. They had different Unix systems locked down for security reasons. Had Awk and Sed to work with and ordered the books from Amazon.

Oracle databases and other databases exported data in fixed width files and I had to download from several Nix systems to import into one general Nix system using Oracle and then a DOS based Clipper 5 system and an Access 2.0 Windows system and they all had to get the same results.

If not for Awk I could not filter the files from the Nix systems.

<comment><USER11> Saying "Nix" instead of "*nix" is confusing because of the Nix package manager[0]

[0][https://nixos.org/](https://nixos.org/)

</comment></comment><comment><USER12> I printed this book and went through it and imho just skimming through all of it is worth it: just understanding how it works beyond the basic '{print $2}' is immensely worth it, and being exposed to some 'advanced' techniques gives you a set of techniques that you can reuse in your daily chores (in particular if you're a sysadmin).

</comment><comment><USER13> This book is worth the read. Just to get in the mindset of the authors. I wish that more programming books could be as concise and useful at the same time.

</comment><comment><USER14> TXR Lisp provides a Lisp-ified _awk_ in a macro:

[http://www.nongnu.org/txr/txr- manpage.html#N-000264BC](http://www.nongnu.org/txr/txr- manpage.html#N-000264BC)

> _" Unlike Awk, the awk macro is a robust, self-contained language feature > which can be used anywhere where a TXR Lisp expression is called for, > cleanly nests with itself and can produce a return value when done. By > contrast, a function in the Awk language, or an action body, cannot > instantiate an local Awk processing machine. "_

The manual contains a translation of all of the Awk examples from the POSIX standard:

[http://www.nongnu.org/txr/txr- manpage.html#N-03D16283](http://www.nongnu.org/txr/txr- manpage.html#N-03D16283)

The (-> name form ...) syntax above is scoped to the surrounding awk macro. Like in Awk, the redirection is identified by string. If multiple such expressions appear with the same name, they denote the same stream (within the lexical scope of the awk macro instance to which they belong). These are implicitly kept in a hash table. When the macro terminates (normally or via non-local jump like an exception), these streams are all closed.

</comment><comment><USER15> For context, I'm in university, but during one of my internships, a lot of the older developers always seemed to use awk/sed in really powerful ways. At the same time, I noticed a lot of the younger developers hardly used it.

I'm not sure if it's a generational thing, but I thought that was interesting.

Anyways, are there any good resources to learn awk/sed effectively?

<comment><USER16> Awk really has been superseded by Perl (and therefore arguably by Python, Ruby, etc.) But sed remains a thing of beauty, all its own, and very well worth learning. Hardly a day goes by that I don't use it in some one-off command like

        for i in *.png; do pngtopnm < $i | cjpeg > `echo $i | sed 's/png$/jpeg/'`; done

<comment><USER14>
      for i in in *.png ; do
        pngtopnm $i | cjpeg > ${i#.png}.jpeg
      done

</comment></comment></comment><comment><USER4> Over the years I've written too many awk one liners to count. Most of them look ugly - hell awk makes Perl look elegant - but having awk in your toolkit means that you don't have to drop out of the shell to extract some weird shit out of a text stream. Thanks Aho Weinberger and Kernigan!

</comment><comment><USER17> And I'm still waiting for the structural regular expressions version of awk [0].

I very much like awk, I prefer it over sed, because it's easy to read. Also proper man page is all one needs. But I find myself many times doing something like this:

      match($0, /regex/) {
        x = substr($0, RSTART, RLENGTH)
        if(match(x, /regex2/)) {
          ...
        } else if(match(x, /regex3/)) {
          ...

Then I sometimes want to mix and match those strings. Or do some math on a matched number. It's a bit tedious in awk.

[0] [http://doc.cat-v.org/bell_labs/structural_regexps/](http://doc.cat-v.org/bell_labs/structural_regexps/)

<comment><USER18> It seems that work has already started: [https://github.com/martanne/vis](https://github.com/martanne/vis).

<comment><USER17> Correct me if I'm wrong, but as fine as vis is it will not feature stand alone strex-awk.

</comment></comment></comment><comment><USER19> Awk is great for quick command line scripts and also for running on a very wide range of systems.

I recently wrote a simple statistics tool using Awk to calculate median, variance, deviation, etc. and people say the code is readable and good for seeing the simplicity of Awk.

[https://github.com/numcommand/num/blob/master/bin/num](https://github.com/numcommand/num/blob/master/bin/num)

</comment><comment><USER20> If you want a fast awk, use mawk.

[https://github.com/mikebrennan000/mawk-2](https://github.com/mikebrennan000/mawk-2)

<comment><USER21> Yes. mawk is shockingly fast.

In my perfect world mawk would have some of the gawk extensions, and it would have a csv reader mode to properly split csv into $1...$NF. Because that would be the killer tool.

<comment><USER20> The new mawk has it, just the old Debian version not yet.

<comment><USER21> Where is the new mawk please?

</comment></comment></comment></comment><comment><USER22> That is a nice book. Starting with a practical tutorial and going into the structure and language features afterwards on a reasonable page count of just about 200 pages.

I like to use awk when I need something a little more powerful than grep. Nevertheless, when I look at the examples and where the book is heading I prefer R for many of the tasks (in particular Rscript with a shebang).

Just to give an example: If you have to manipulate a CSV file, that would most certainly be possible with awk, but some day there might be a record which does contain the separator and your program will produce some garbage. R on the other hand comes with sophisticated algorithms to handle CSV file correct.

I truly respect awk for what it was and is but I also think that the use-cases where it is the best tool for the job has become very narrow over time.

</comment><comment><USER23> As I do most of my daily work in cheminformatics with a (shell-based) workflow engine ([http://scipipe.org](http://scipipe.org)), awk has turned out to be the perfect way of defining even quite complicated components based on just a shell command. These days, pretty much 50% of my components are CSV/TDV data munging with awk! :D

(Can be hard to explain how this works without an image, so an (older) image is found in: [https://twitter.com/smllmp/status/984173696448434176](https://twitter.com/smllmp/status/984173696448434176) )

</comment><comment><USER24> I find awk so beautiful. I written many scripts in awk. It is so good at data transformation. I used it write a script to delete old and unused records from tables. The book is so beautifully written with amazing clarity of thought.

</comment><comment><USER25> I recently had a sort of "contest" with someone for parsing the output of a tool. I had to parse some text output into a tree structure.

The other person wrote it in awk, quite quickly. After writing my own version in Python (my version was waaaay over-engineered), I decided to blatantly rip- off the awk solution and re-implement it in Python.

It was almost as simple and as short.

Awk is much more compact as a language, but also way more limited. And it still has its quirks and a certain volume of information you have to gather. I'd say it's more worthwhile to learn Python instead, because you'll be able to use it for other purposes.

</comment><comment><USER11> From the introduction to Chapter 2:

> Because it's a description of the complete language, the material is > detailed, so we recommend that you skim it, then come back as necessary to > check up on details.

Any book that recommends skimming is doing something right.

</comment><comment><USER26> This pdf looks like a scanned book but I can highlight and copy text from it? What exactly is going on here? Does Chrome pdf viewer have built-in OCR?

<comment><USER27> PDF has long had this feature, most/all readers support it. There is a hidden textual representation included along with the scanned shown content.

<comment><USER26> Interesting, why not just replace the text then? Where can I find more info about this? I was actually trying to find a good source of info about PDF's recently and couldn't really find much.

<comment><USER27> Replacing the typeset text with any reasonable fidelity seems like a much harder problem than reproducing the scan and providing the ocr'ed text content. It might still be a good idea to do, maybe some software does this.

I don't have any references, sorry.

</comment></comment></comment></comment><comment><USER28> The lovely and humbling thing about this it was written 3 decades ago and the examples still work. Makes me think of another short elegant piece by Kenneth Church (?) called "Unix for Poets" which shows how to use core UNIX utils to work with text. Also from the mid to late 80s. Perl may have replaced sed and awk but they endure.

</comment><comment><USER29> See also: [http://www.faqs.org/faqs/computer- lang/awk/faq/](http://www.faqs.org/faqs/computer-lang/awk/faq/) from 2002

For latest manual/book: [https://www.gnu.org/software/gawk/manual/](https://www.gnu.org/software/gawk/manual/)

</comment><comment><USER30> I've this book and highly recommend. I have referenced it numerous times to pull out text manipulation wizardly that stunned others.

<comment><USER31> Lol. This is the IT equivalent of the hairy dog story about the itemized million dollar invoice: $1 - drill a hole, $999,999 - knowing where to drill the hole.

And by that I mean sometimes it seems easy to solve a problem because you have the skill to do so. It _looks_ easy but that's only because of the time invested in making it easy _for you_. For anyone else the challenge remains.

</comment></comment><comment><USER32> I always found it interesting that the Awk paradigm is also the basis for IBM's RPG language. Two very different environments coming up with basically the same elegant solution for the same problem:

1\. Run zero or more setup operations.

2\. Loop over the lines of a text file and process its columns into an output format.

3\. Run zero or more cleanup operations at the end.

</comment><comment><USER33> If you want a binary alternative to awk, try using lex.[1]

You can feed in regexps and c code fragments and it will generate c code for you.

[1] [https://www.tldp.org/HOWTO/Lex-YACC- HOWTO-3.html](https://www.tldp.org/HOWTO/Lex-YACC-HOWTO-3.html)

</comment><comment><USER34> I wanted to know what the language looked like so I went to the first example in the book and found this:

      This is the kind of job that awk is meant for, so it's easy. Just type this command line:
      awk '$3 > 0 { print $1, $2 * $3 }' emp.data

</comment><comment><USER35> Lots of comments about awk, perl and sed for text proccessing. What about tcl?

</comment><comment><USER36> Recycling an older HN discussion on Awk vs Perl

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

</comment><comment><USER37> I just skimmed it in 30 minutes. I feel I can write some simple stuff now. Except for all the examples it doesn't feel that overwhelming.

</comment><comment><USER38> I was joking with my coworker some weeks ago about how awk is condemned to be forever used as a cut replacement.

</comment><comment><USER39> I have this book. I use awk daily to do analysis of Suricata logs. It's great for querying structured text.

</comment><comment><USER40> I love the typography

<comment><USER41> That's troff at work.

<comment><USER42> This has bothered me for a long time. It looks like i'm seeing something other than what other people are seeing. So many of these documents just look awful. In this particular case it does not look good either:

[http://i.imgur.com/e11d0aK.png](http://i.imgur.com/e11d0aK.png)

[http://i.imgur.com/0Ysr7QQ.png](http://i.imgur.com/0Ysr7QQ.png)

Look at the kerning on "Awk", it's not good. And look at the zoomed in version, the characters all have pixelisation and jaggies.

These were just viewed using Firefox's default pdf viewer. Is there a way to view them and see better a quality version of the document?

<comment><USER41> Given that this is a scan of a book produced on a phototypesetter (no pixels), you probably want a real copy.

<comment><USER42> Yeah, it was just surprising to me that people were praising this document.

</comment></comment></comment></comment></comment><comment><USER43> Awk has it's uses. If you use the command line you'll probably use Awk occasionally.

I don't get the Perl hate. Perl's unpopularity may have something to do with some of the languages design choices. I think what really killed it was Perl coders. Some of the worst code I've seen happened to be written in Perl. If you follow clean code principles Perl is fine. Mojolicious is an awesome framework. I like it a lot.

Today I code Python and C. I used to code Ruby and before that Perl. I loved Ruby's syntax but Ruby seems to be waning. I'm looking forward to coding in Go. I'll be coding Javascript but I'm not looking forward to it.

Use the tool that fits the job. I have no loyalties to any programming language.

<comment><USER44> >Perl's unpopularity

Is a myth actually.

> Tom Radcliffe, recently presented a talk at YAPC North America titled "The > Perl Paradox." This concept refers to the fact that Perl has become > virtually invisible in recent years while remaining one of the most > important and critical modern programming languages. Little, if any, media > attention has been paid to it, despite being ubiquitous in the backrooms of > the enterprise.

> Yet at ActiveState, we have seen our Perl business continue to grow and > thrive. Increasingly, our customers tell us that not only are they using > more Perl but they're doing more sophisticated things with it. Perl itself > recently made it back into the Top 10 of the Tiobe rankings, and it remains > one of the highest paying technologies. Therein lies the paradox.

[https://www.activestate.com/blog/2016/07/perl- paradox](https://www.activestate.com/blog/2016/07/perl-paradox)

<comment><USER45> At the bottom of top 20 now and pretty much no job openings in most countries.

<comment><USER46> With perl's use cases, I would be a bit surprised to see a job specifically for programming in perl. It's a tool that you use to support your other infrastructure. It's not a tool that you generally use to build up that infrastructure.

Similarly, I don't expect to see many jobs openings for wrenchers, but I fully expect a mechanic being hired someplace to be able to use a wrench.

<comment><USER14> > _see a job specifically for programming in perl_

That was exactly seen some twenty years ago. Perl as used to build infrastructure, like entire back-ends for sites and whatever.

You don't see those jobs _anymore_.

</comment></comment></comment></comment></comment><comment><USER47> _bold_ was called _heavy_ , lol

</comment><comment><USER48> I know many people will downvote, but in my opinion, just say no to this ancient "programming language". It's so confusing, completely text based, designed ages ago in an entirely different environment. There are many better alternatives, like Python or Powershell. Why not use them?</comment>


Ask HN: What does your home office look like? - <AUTHOR> Please share some ideas regarding style and design and maybe post some pics. <comment><USER3> I work from home full time, and live across the road from the English Channel (St Leonards On Sea), in a Victorian Maisonette. My office is on the 3rd floor with bay windows overlooking the sea.

The office room itself is largish, with 1.5 sofas, and a small table for tea. I have two desks - one sitting and one standing. My sitting desk is for writing code only. My standing desk is for everything else (meetings, email, etc.) My code-desk faces the sea so I can look out at the blue for inspiration if I need to. Above my standing desk is a whiteboard for notes/todo/etc. I have a small closet with a printer and supplies. I have to shield my workhorse machine from the sun sometimes so it does get too hot in the summer. In the English winter (10 months out of the year), it makes for a nice natural cooling system :)

\-- EDIT -- here is a very poor quality photo: [https://twitter.com/binarymax/status/460012757317074944/phot...](https://twitter.com/binarymax/status/460012757317074944/photo/1)

<comment><USER4> My envy knows no bounds.

<comment><USER5> Hastings isn't the best place to live...

</comment></comment></comment><comment><USER6> I use an Ikea Gallant desk. My main computer (home built Linux system running Windows via VirtualBox) sits underneath, and a large-screen Asus monitor is on top, as does my laptop. I try to keep the physical desktop devoid of non- essential stuff, but this is a losing battle. I also have a video projector directed at the wall in front of me.

My office is full of books, plants, my LEGO projects, and other miscellaneous toys and distractions. The walls are decorated with classic covers from Byte Magazine

I have one window with three bird feeders to my right. I can also look into my backyard (through another room).

Here are some pictures:

[https://dl.dropboxusercontent.com/u/5815303/jeff_home_office...](https://dl.dropboxusercontent.com/u/5815303/jeff_home_office.jpg)

[https://dl.dropboxusercontent.com/u/5815303/jeff_barr_home_o...](https://dl.dropboxusercontent.com/u/5815303/jeff_barr_home_office.jpg)

<comment><USER7> There's something really great about the Gallant desks. Cheap, roomy, well built, no fuss. I have the version with T-Legs, but I can't honestly go back to other kinds of desks.

<comment><USER8> I personally only buy the frame, and build a table-top for it. You can get pre-glued boards like this, which are quite easy to finish: [http://www.menards.com/main/building-materials/lumber- boards...](http://www.menards.com/main/building-materials/lumber- boards/boards/edge-glued/c-13146.htm)

If you're worried about the wood getting damaged by repeated disassembly- reassembly cycles, you can use insert nuts to screw a machine bolt into: [http://www.menards.com/main/tools- hardware/fasteners/nuts/mi...](http://www.menards.com/main/tools- hardware/fasteners/nuts/miscellaneous/1-4-20-wood- insert-1-pcs/p-1445510-c-8921.htm)

The nice part is that an actual wood top not only looks and feels better, it's a bit cheaper than the particle board tops that IKEA makes.

</comment></comment></comment><comment><USER9> A single Ikea desk, beside a window that has good blinds, on the 19th floor of a building with a view over North London.

Under the desk a UPS, NAS (18TB RAID6), the WiFi plus a single powerful workstation (16-core, 192GB RAM, SSD for main drive, 6TB RAID0 scratch disks).

On the desk some books, a bottle of single malt whisky, a playstation (dusty and not wired up) and a scanner. A single large monitor (high quality). A desk lamp with halogen bulb.

My home office is just a corner of a room, with all the tools I need nearby.

It is slightly messy, I tend to have mail opened on the desk, and small things around it.

It's comfortable, a place I enjoy being.

But it's also a work zone... my viewing of videos and entertainment is on a television purposefully not visible from the desk. Meaning I must leave the work environment to enjoy entertainment with others.

I'm not fortunate enough to be able to create a study room that could be an office. Space is limited, but the ideal would be a comfortable library space, lit well enough (but not enough to harm the books), and quiet.

<comment><USER10> wow, what do you need the 192GB of RAM for?

<comment><USER11> I suppose virtual machines. Tons of virtual machines.

<comment><USER9> Firefox.

Nah, those days are gone... I bought the machine when working on my MSc project as it worked out to be similar in price to renting AWS machines at the time for the duration of the project and work.

I needed 20+ virtual machines to be running, for a long period of time (3-6 months), gathering and processing data, to perform various experiments during the project.

The crux of it was that as AWS would cost me the same ballpark as 6 consumer desktops or 1 professional workstation, that I might as well buy and own the hardware.

Then the choice was between 6 consumer machines all using energy and producing noise + heat, or the 1 workstation (idling most of the time). I chose the workstation as it would be more flexible in the future (now).

The workstation has lasted years and is still a superb workhorse. I'd go this route again as it's proved great value for money and still has years in it.

It's an older HP Z800, runs Linux now but used to run Windows.

</comment></comment></comment></comment><comment><USER12> [http://i.imgur.com/YlTn5cD.jpg](http://i.imgur.com/YlTn5cD.jpg)

That's my home office, I live on what used to be a working dock in the north of England but was filled in and used for housing so it has a nice feel, I love it because I'm 200ft from a massive river (great for thinking walks [http://i.imgur.com/ibfcLn2.jpg](http://i.imgur.com/ibfcLn2.jpg), not so great when a massive storm surge nearly topped it in Dec heh - [http://i.imgur.com/P2DRT0h.jpg](http://i.imgur.com/P2DRT0h.jpg)).

I can't stand working in a mess, I have to tidy both offices before I can settle down to do any real work and I've found as I get older I need more quiet to work properly I don't seem to be able to tolerate distracts as well as I could, I'm lucky in that while I'm starting a business and money is tight the North East of England is very cheap to rent in so we still have a two bed with a spare bedroom for an office :).

[http://i.imgur.com/yB0IN1e.jpg](http://i.imgur.com/yB0IN1e.jpg) is my work office (which feels like home sometimes!) rented in an old Victorian building the council run, high ceilings and lots of space and light which is nice.

<comment><USER13> Nice setup, the monitors in vertical position are 19" or 21" inch?

<comment><USER12> 24"'s

They are Dell 2412M's.

</comment></comment></comment><comment><USER14> My wife and I run what I would categorize as a micro-saas business and we both work at home. She works part time at a standup desk that I made from furniture parts, and she also uses a drafting style chair that I made from parts purchased on the internet. LOL @ her clocks, looks like one needs a battery. To her left is a small white board.

My desk is also somewhat home made and doubles as my hobby project studio for song writing and recording. Behind my chair (not visible in the pic.) are a 10" sub woofer and a larger white board. I have a tiny bike mirror over my right monitor to avoid a bad shock when someone stops by my desk while I'm deep in a project. The tiny red button on the left corner of my desk is to engage/disengage the sub woofer. Most days my dog sleeps on the rug by my chair and amazingly I have never rolled over him.

My desk: [http://i.imgur.com/OfYjTgX.jpg](http://i.imgur.com/OfYjTgX.jpg) Her desk: [http://i.imgur.com/vI4GR7H.jpg](http://i.imgur.com/vI4GR7H.jpg)

<comment><USER15> You guys both work at home and you are still married? Congrats. That usually strains a lot of relationships.

<comment><USER14> Thanks, we have been working together for 17 years now and it's great. We limit work hours to weekdays 9-5.

</comment></comment></comment><comment><USER16> Our house is part of an old 12th century church. The part of the house that runs into this church is my home office. We work here with 2 (sometimes 3) people.

The view is amazing, but I've crammed it with cheap functional desks and chairs and shelfes/tables. The walls are painted a nice purple, but the rest is all about "while we're not making a bunch of money, we can't have nice things".

Do mind that our equipment ( Computers, screens, (3D-)printers etc) is all up to date, no savings there, obviously.

</comment><comment><USER17> I work from home full time and live on a Pier in the Hudson River right across NYC. My home office has a large solid wood workbench and a Herman Miller Aeron chair. There's an iPad mounted on the wall running Status Board app showing some vital stats.

All work is done on my 27" iMac, while watching the curious life of liveaboards in the marina outside and looking at the Manhattan skyline…

[https://www.dropbox.com/s/nhjki7bpcpfpemw/HomeOffice1.jpg](https://www.dropbox.com/s/nhjki7bpcpfpemw/HomeOffice1.jpg)

[https://www.dropbox.com/s/0u7lbw9d1t0n7ek/HomeOffice2.jpg](https://www.dropbox.com/s/0u7lbw9d1t0n7ek/HomeOffice2.jpg)

[https://www.dropbox.com/s/5uzavsek2dz80qf/HomeOffice3.jpg](https://www.dropbox.com/s/5uzavsek2dz80qf/HomeOffice3.jpg)

(Sorry for the poor pics, had to shoot against the sunlight coming in)

<comment><USER12> I like your desk, it looks like something I've had in my head for a while done using retired scaffolding boards :).

I also live on a river though my view is not as good as yours I do love been able to take a walk when I need to think.

<comment><USER17> I bought that table in 1996 at Pottery Barn. It was ca. $800 then, but worth every penny. It's nice and large and easy to move since the tabletop can simply be lifted off the wrought iron stands. Once a year I treat the wood with orange oil which makes it look like new.

Likewise, whenever I have (code)writers block I go or bike along the Hudson waterfront here. Love it.

<comment><USER18> What is the ipad on the wall doing?

<comment><USER17> Running [https://panic.com/statusboard/](https://panic.com/statusboard/) and showing emails and Google Analytics data. Instant, always on, very convenient.

</comment></comment></comment></comment></comment><comment><USER19> I don't have an office, even though I work from home.

I alternate between:

1\. An amazing café on the beach - warm, sunny, coffee (and beer!) on tap 2\. The garden - if it's the right time of year, Wifi is lacking so tend to stay more focussed 3\. Barstool in Kitchen/Stood up working 4\. Dining room table - white wall behind, good for video calls 5\. Lounge 6\. Trains

I'm fortunate enough to be able to work with just a laptop, no large screens/mice/speakers/headphones/paper etc needed, so I don't feel that I'm without stuff if I'm not at a desk.

<comment><USER20> Curious what you do? I do web development & programming and feel that when using a laptop my productivity can nosedive unless I have a full size keyboard.

<comment><USER21> Different strokes and all that but I have a reasonably big desktop setup (4 large monitors, multiple machines, etc.) but my main keyboard is an Apple Bluetooth one which feels no bigger than the one on my MacBook Pro.. :-)

<comment><USER20> I tried those for a couple of days, I must be use to very cumbersome keyboards because I felt myself pushing it all over the desk with my heavy strokes.

</comment></comment></comment></comment><comment><USER22> Student here, so I guess my office is less mission-critical than others.

I took an old door, nailed an edge around it, and varnished it. Got two trusses from Ikea for pretty cheap (~$30 each), and two "night stands" that work really well as shelves.

I have an absurd amount of desk space and I find it great for working. My desk is messy, but I'll get a picture up in a sec.

Edit: Heres that photo [http://i.imgur.com/eAY7xZC.jpg](http://i.imgur.com/eAY7xZC.jpg)

<comment><USER7> Door/desks are some of the best. My old desk in High School was a door and some concrete blocks. All the cords ran through the hole the handle was supposed to occupy.

<comment><USER22> I actually really wanted to do that, but I got the door before it had the handle hole cut through it (there's a place not far from me that sells unused things like that). There's still time, I suppose.

</comment></comment></comment><comment><USER23> For inspiration:

[http://www.reddit.com/r/battlestations](http://www.reddit.com/r/battlestations)

[http://www.reddit.com/r/macsetups](http://www.reddit.com/r/macsetups)

<comment><USER24> Its a great idea to use an Apple keyboard... for taking a picture of your workspace. Then back to the real keyboard.

More seriously, I really wish any USB keyboard could be "converted" into a Apple Bluetooth keyboard (as far as the Mac knows) - they have great connectivity, battery life.

<comment><USER25> For the ultimate keyboard experience, get a mechanical keyboard.

[http://www.reddit.com/r/mechanicalkeyboards](http://www.reddit.com/r/mechanicalkeyboards)

<comment><USER23> I'm using both mechanical and MacBook built-in, and I'm not sure if I like mechanical better.

It's kinda cool to type on it, but the keys are just so huge, it feels like I'm using a typewriter. Using the Apple keyboard is the opposite, it's like I'm just slightly brushing the surface.

<comment><USER25> If you're pressing the keys on a mechanical keyboard all the way down, then you're not using it correctly. One big advantage of (most) mechanical keyboards is that there's a clear tactile and/or audible indication of actuation, at which point you can release the key.

<comment><USER23> Ha, that's actually a great tip. I think I was just too used to regular keyboard, where you have to press until the key touches the bottom -- but with mechanical keyboard it's enough to press until I can feel the feedback.

I takes some getting used to, I have to consciously try to press the keys lightly, but it kinda feels nice! I'm definitely enjoying my mechanical keyboard much more this way.

Also, 10 keys typing is a must with a mechanical keyboard.

</comment></comment></comment></comment></comment></comment><comment><USER26> Nothing special about my current home office (which consists of a desk in my bedroom), but back when I lived in Brooklyn, I had a makeshift standing desk with a nice view of Manhattan.

[http://www.scrambledbrains.net/2011/02/20/standing-desk- conf...](http://www.scrambledbrains.net/2011/02/20/standing-desk- configuration-2/)

<comment><USER27> Incredible view for sure. I find that I'm most productive when I can see lots going on around me.

</comment></comment><comment><USER28> Please don't be offended, I'm a hacker/geek too but I've generally found designers to have much more aesthetically pleasing home offices.

Not that they write better code, they're just prettier :D

[https://news.layervault.com/stories/8613-ask-dn-your- workspa...](https://news.layervault.com/stories/8613-ask-dn-your-workspace)

<comment><USER29> I don't think it's too controversial to think that people who work with aesthetics have more aesthetically-pleasing workplaces.

</comment></comment><comment><USER30> We moved to the mountains in Central Arizona about 14 years ago and my wife helped setup my home office: large book cases, a huge teak desk, and an ergonomic chair. I have a view of the red rocks/mountains, which is nice.

So, I have a nice home office but I don't much use it because I prefer working in different places around our house and outside, weather and available shade permitting. I use my office mainly when I need to plug my laptop into a large monitor. Otherwise I like to use a light weight lap desk and roam. About once a month I will work out of a coffee shop.

<comment><USER31> Sounds beautiful. Love that area. How's the community? Is it totally isolated, or do you know some people nearby, etc?

<comment><USER30> We live in a small town, lots of friends and things to do. Flaggstaff and Cottonwood are in the area for major shopping. We moved from the beach in California and I substitute kayaking for the ocean. Shoot me an email if you are in the area.

</comment></comment></comment><comment><USER32> Here's where the magic happens:

[https://twitter.com/Justin_Mandzik/status/460080620329508864](https://twitter.com/Justin_Mandzik/status/460080620329508864)

[https://twitter.com/Justin_Mandzik/status/460082804827881472](https://twitter.com/Justin_Mandzik/status/460082804827881472)

Edit: I do a few days a week from home, with a fair amount of video conferencing. White board is critical to get me out of my chair to draw out what's in my head.

</comment><comment><USER33> I just recently (i.e., last week) finally splurged and bought a motorised sit/stand desk. I've been wanting one for some time as I work from home full time and want to stand for part of the day.

Here is the new setup (in standing position): [http://imgur.com/cgRoSUu](http://imgur.com/cgRoSUu)

I just bought the frame and reused the desktop from my old desk. I was tired of using plastic boxes and phone books as monitor stands, and couldn't find good stands that had the height I wanted, so made my own using some wall-mount monitor/tv brackets: [http://imgur.com/YwyRwVl](http://imgur.com/YwyRwVl)

The window on the right looks out on the cat-run in the back yard (when the curtain isn't drawn) and that's a hermit crab tank on the left (which is currently unpopulated until I automate the humidity controls.)

Speakers and lots of kids photos are on a shelf that is currently behind the monitors, but can be seen when sitting. My back is to the door, so there is also a little rear-view mirror glued to that shelf to make it harder for the kids to sneak up on me. (Tying bells to collars worked okay with the cats, but not so well with the children for some reason which is strange as the cats are much more cunning.)

</comment><comment><USER34> Here's part of my current home office: [http://imgur.com/ERUHALo](http://imgur.com/ERUHALo)

* Motorized adjustable standing desk from the Ikea (Linak legs; whole thing was under €600), in standing mode. Yes, fixed standing desks are not going to work, you need to be able to alternate between standing and sitting throughout the day.

* On the left, Synology DS213j, TP-Link TD-W8970 ADSL2+ Modem router and Meissner 750VA UPS to keep my internet connection going during Eskom (South African electricity supplier) power outages / load shedding (tested, works a treat! with laptops charged, I can continue accessing internet for a few hours of no power. Telkom exchanges have their own power supplies)

* Cheap laptop with IPS display (see [http://wp.me/p1dVx9-6k](http://wp.me/p1dVx9-6k) ) connected to Samsung external LCD. You're seeing Emacs on the left with Zenburn theme, and Intellij IDEA 13 on the right with Darcula IDE + Solarized Dark editor themes, everything still on Ubuntu 12.04.

* My corner is indeed quite cluttered, but comfortable to work in. :)

</comment><comment> ux-app I recently set up a new home office: [http://i.imgur.com/mSTllTC.jpg](http://i.imgur.com/mSTllTC.jpg)

it's nice to finally have a decent space to work in. Having a comfortable spot that I enjoy being in has definitely improved my productivity.

My goal is to eventually work from home.. maybe 2014 will be my year :)

<comment><USER35> I like the idea of a fish bowl on the desk! Where did you get that one from?

<comment> ux-app It's actually just a big vase :)

</comment></comment></comment><comment><USER36> I have a pretty horrible office room (1BR condo with the living room/kitchen combination turned into basically an office with a couple desks), but what I do like is my desk itself -- it's one of the IKEA glass-top galants, and I have 2 dual-monitor ergotron arms with 3 x 24" U2410 dell monitors and a laptop stand for a mac. I have a PC (win7 or ubuntu, dual boot) with lots of RAM, SSD, etc.) connected to all 3 monitors, but one of the monitors switches with the macbook pro 17" left on the desk, and another is used for any "guest" system I'm working on via vga, dp, or hdmi. I have 2 keyboards always on the desk and sometimes a third.

When I move, I might switch to retina displays on arms for my primary systems, but 32 is more tempting than 24. Standard-definition displays still work great as big consoles, too.

</comment><comment><USER37> My wife and I share a room on the brightest corner of our house. It's mainly furnished with Ikea, which is cheap, functional and has a clean style that is well suited for an office environment. I have a workstation with a couple of 24" monitors mounted to the wall. I was concerned that the desk wouldn't be large enough, but having the monitors off the desk surface frees up more than enough space for me. My mechanical keyboard makes typing at my desk a bit more fun. And I can take my laptop over to a surprisingly comfortable chair in the corner of the room when I get tired of sitting at my desk.

We also have a puppy that likes hanging out in the room and is a great source of distraction.

[http://imgur.com/a/vj3mt](http://imgur.com/a/vj3mt)

</comment><comment><USER38> I cycle between working in my basement "office", my living room with a convertible standing desk, and when the weather is permitting, out on the back yard semi-patio-thing.

Relevant pictures:

[https://twitter.com/jessegumm/status/460019341355143168](https://twitter.com/jessegumm/status/460019341355143168)

[https://twitter.com/jessegumm/status/460020285786578944](https://twitter.com/jessegumm/status/460020285786578944)

[https://twitter.com/jessegumm/status/460019950338727936](https://twitter.com/jessegumm/status/460019950338727936)

</comment><comment><USER39> Here is mine [http://imgur.com/a/5KRiL](http://imgur.com/a/5KRiL)

<comment><USER40> This one is my favorite of this thread by far!

<comment><USER39> Thanks!

</comment></comment></comment><comment><USER41> I'm lucky to work from home full time. My wife does a bunch of drug research when she get's home so it's nice to be in the same room. We are in the process of moving so here is a photograph from our listing: [http://i.imgur.com/aziRyhv.jpg](http://i.imgur.com/aziRyhv.jpg)

The desk was custom built for the office so not sure if we will take it with us. I love wood working and would love even more to create this myself someday, but my skills aren't there yet :)

<comment><USER42> WOW, that is a really nice desk!

</comment></comment><comment><USER43> The most notable not work related items in my office: a guitar, a Cromemco Z-2D computer, a writing desk that I inherited from my grandmother, an old square milk churn, a rusty leg vice that was my grandfathers and a Vroling wood-burning stove ( [http://www.vroling.nl/afbeeldingen/vroling%20kachel.jpg](http://www.vroling.nl/afbeeldingen/vroling%20kachel.jpg) , but mine is nicer).

And then there are the boxes in the corner, because we only moved here 3 years ago. Oops.

</comment><comment><USER44> When I was having some renovations done a while back, I had a desk built into a spare bedroom (that I was already using as a dedicated office). Basically, its' about 10' long and wraps around one of the corners. The corner is where my 2 monitors live as well as an articulated keyboard tray with a mechanical switch keyboard and mouse + trackpad. And an old Aeron chair (which HM replaced at no charge about 7 years into its warranty when a part broke!).

One of the nice things about this arrangement is that the corner is really deep. At one time this let me use a big CRT. Now it just lets me shove lots of USB drives and so forth out of the way. I have a few computers but I really only use my Mac Mini most of the time.

Most of the remaining wall area is file cabinets and bookcases. Truth be told a lot of the paper volume in the office is essentially "legacy" paper though I have cleared a fair bit of that over the years. If I were starting today, I'd probably make more of an effort to have as much digitized as possible. As it is, a lot of the older material just isn't worth the effort.

I used to do most of my computer work in my office. Truth be told these days, I often just work on my laptop in some other room. Not sure why I changed but I find I like moving around unless I'm doing some task that's a lot better on my desktop setup.

</comment><comment><USER27> [http://i.imgur.com/KyNniKN.jpg](http://i.imgur.com/KyNniKN.jpg)

Mine is in one of the smaller rooms of my house that I work out of once in a while. I belive the table top is the Ikea Gerton ([http://www.ikea.com/us/en/catalog/products/50106773/](http://www.ikea.com/us/en/catalog/products/50106773/)) that I bought a few years ago. Such a simple desk and loads of room. Pretty heavy too.

<comment><USER45> What's the make and model on your chair? Nice setup

<comment><USER27> It's a Herman Miller Embody. Very expensive, but my fiancee got a great discount through work. Great investment if you sit all day.

[http://www.hermanmiller.com/products/seating/performance- wor...](http://www.hermanmiller.com/products/seating/performance-work- chairs/embody-chairs.html)

Plenty of color options. We were told the white back wasn't possible for some reason, but somehow the woman we worked with managed to sneak it in. Very happy when it was delivered!

</comment></comment></comment><comment><USER46> I don't have one really. I have a T400 thinkpad and work wherever I feel comfortable. I avoid a specific place to work as I find that terribly demotivating.

</comment><comment><USER47> My living room consists of my desk, TV and a small sofa. The desk is positioned in the middle of the room, so I can see the TV. It's a terrible setup for entertaining guests but it's nirvana for working from home. I'd hate to be cramped up in a small office or next to my bed. Being able to watch TV while I work allows me to be able to work for 12+ hours with no problem. And I really like the extra space.

</comment><comment><USER48> [https://whatimg.com/i/Rk8suJ.jpg](https://whatimg.com/i/Rk8suJ.jpg) [https://whatimg.com/i/mISJVr.jpg](https://whatimg.com/i/mISJVr.jpg) [https://whatimg.com/i/rdhPMY.jpg](https://whatimg.com/i/rdhPMY.jpg) \- this picture gives a better overall view.

Gallant corner desks - I've updated, since, to an iMac and Thunderbolt Display. I want to go to a more simpler set up with a better quality desk. Galant desks are nice, but I'm really wanting something with more texture, sturdier.

Take the time and invest in cable management. It makes everything so much better. On the other side of my office, what works awesome is an Ikea Expedit turned on its side - [http://www.ikea.com/gb/en/images/products/expedit- shelving-u...](http://www.ikea.com/gb/en/images/products/expedit-shelving- unit__0092710_PE229408_S4.JPG) \- fits my two printers, Airport and a little rock fountain just perfectly. I've worked at home for coming up on seven years now.

</comment><comment><USER49> Linux.com has articles on what the Linux kernel developers do:

[https://www.linux.com/news/special-feature/linux- developers](https://www.linux.com/news/special-feature/linux-developers) [http://www.youtube.com/user/TheLinuxFoundation/search?query=...](http://www.youtube.com/user/TheLinuxFoundation/search?query=workspace)

</comment><comment><USER7> Spare bedroom my wife and I both use. We each bought two cheap IKEA desks (they look like Galants, but with T-Legs, very basic) -- one desk for our computers and monitors and such (sooo much space) and another for other sundry. I have a 4 color laser all-in-one and the guts of a MAME machine I'm working on on my second disk, my wife has mostly paperwork spread out. A pair of comfortable, relatively cheap ($200) chairs from Costco. That's about it, when it's organized better than it is right now, it's semi-minimal with tons of surface space to work off of. Right now I have too many old computers in there I need to dispose of or do something with and lots of other junk I need to organize. I keep my photography equipment in there as well and we're preparing for an overseas trip so all that junk is in there as well.

I try not to keep lots of books or anything in there. I have a separate library room for books and various curio (the actual home office designed for the home, but is just a hair too small for my current setup plus my wife's plus my books).

</comment><comment><USER50> In the middle of a move (out of a rental into a place we are buying) so no pics but I work full time remote from the bitterroot mountains of Montana.

I use a costco wire shelving unit + a couple of boards as a standing desk with a monoprice 27" ips monitor and a macbook pro. I have one shelf set up to keep the monitor and macbook at eye height and another lower one with boards for keyboards and mouse plus a drafting chair for when I want to sit. Also there is one shelf on top and another a couple of inches bellow the keyboard shelf for stability and storage and the whole thing needs to be against a wall to work well.

It works pretty well but I find myself missing a sitting desk for days when i'm too exhausted (from climbing and skiing mountains) to stand all day. Not sure if I will purchase an adjustable or just set up two works stations once we've moved. Either an arm to move my main monitor or a second monoprice is cheaper then any adjustable desk i've seen.

Also a comfortable chair usually with a cat curled up in it, view of the mountains and a closet full of climbing and skiing gear.

</comment><comment><USER51> A custom made desk by the window with an obscured Indian Ocean view (Mombasa). Three monitors on the desk. Under the desk a build server and what was my main computer stacked one over the other. I work from home, and all this is just at the corner of what is supposed to be a bedroom. Nice curtains to have just enough light in the room and a nasty array of various cables all over the place.

</comment><comment><USER52> I live in an apartment, first floor. I Work from home full time in Bolivia. I accommodate a room with two desks, most of the time I use both and in occasions I share one.

I don't like to have anything else in the room, when I want to rest I just get out of my desk, for a coffe, a nap or answer my cellphone.

No TV in my apartment.

[http://i.imgur.com/O5myrqn.jpg](http://i.imgur.com/O5myrqn.jpg)

</comment><comment><USER53> I did a blog post a few years back with a compilation of pictures of offices of independent programmers: [http://successfulsoftware.net/2009/07/27/where-i- program/](http://successfulsoftware.net/2009/07/27/where-i-program/)

Check out the 'breaking bad' style office.

</comment><comment><USER54> My (hopefully!) temporary setup consists of a table over the freezer in the corner of the kitchen. Flanked by enormo-pepper grinder and box-radio. On the plus side, I'm never far away from snacks...

[http://i.imgur.com/uBotECk.jpg](http://i.imgur.com/uBotECk.jpg)

</comment><comment><USER55> I work from my apartment in the Plateau Mont-Royal neighborhood in Montreal. It's a small prewar apartment, and the living room has its original stucco walls.

I work sometimes from my desk, sometimes from a standing standing at the other side of the room by the window, and sometimes from neighborhood cafes.

I posted pictures of my setup to /r/minimalism a while ago. Note that I have since failed to keep up this system perfectly, but often my desk does look like this. Seeing what I posted has inspired me to deal with loose paper better, which is my main cause of clutter.

[http://www.reddit.com/r/minimalism/comments/1hi0i7/my_new_mi...](http://www.reddit.com/r/minimalism/comments/1hi0i7/my_new_minimal_desk_setup_pics_explanations/)

<comment><USER56> Hi Graeme, we're in Le Plateau too, moved here from SF (previously Berlin and Sydney).

We have a nice office on Blvd Saint Laurent looking directly out onto Mont Royal: high ceilings, 11 inch MBAs, 27in screens, Ikea trestle tables, etc. It's not a home office per se, but home for us nonetheless.

You should drop by if you ever walk past. We're just above Code Black Coffee.

<comment><USER55> Oh cool, I actually spotted your office on a late night walk home a few weeks ago. I'll drop by when I'm in the area during the day.

</comment></comment></comment><comment><USER57> I am currently having a very simple one. But I admired this one [https://www.flickr.com/photos/paladin27/3217388885/](https://www.flickr.com/photos/paladin27/3217388885/) a lot. Will soon make out something like it.

</comment><comment><USER58> I work from home part time (living in a small apartment) and built a standing desk out of a shelf, a piece of wood and a black glass plate. I specifically designed it as small and simple as possible so my work space has no physical distractions and there is no space left for piling paperwork.

I also created a physical Kanban board to manage day-to-day tasks, it's right next to the standing desk and I enjoy its omnipresence because I can always see the big picture of my work. (also the mere exposure effect kicks in :) )

Here's a picture, it's small, it's simple, I love it: [http://www.patrick- wied.at/misc/img/standing_table.jpg](http://www.patrick- wied.at/misc/img/standing_table.jpg)

</comment><comment><USER59> Funnily enough, MKBHD recently did a long video showing a variety of his viewers setups recently. I've linked to the unique setups section as these are possibly more interesting (there are quite a lot) [http://youtu.be/pmnLca3FneU?t=1h53m23s](http://youtu.be/pmnLca3FneU?t=1h53m23s)

also worth checking out lifehacker which features a lot of setups too:

[http://lifehacker.com/most-popular-featured-workspaces- of-20...](http://lifehacker.com/most-popular-featured-workspaces- of-2013-1482839620)

[https://www.flickr.com/groups/lifehacker-workspace- showandte...](https://www.flickr.com/groups/lifehacker-workspace-showandtell/)

</comment><comment><USER60> I work from home as a freelancer.

I use a flat desk, which I extended on both sides so its more wide. Under left side of it is chassis & UPS, under right are routers and subwoofer. On far left side on the desk you can see laptop, and on right one various stuff that form one mess :) Also there is a white light lamp that forms nice soft backlight in the background (it's not that strong as it is in picture). This summer I plan to move, so I plan to get a new setup, a better desk and a better cable management.

[https://dl.dropboxusercontent.com/u/68877713/IMG_20140426_19...](https://dl.dropboxusercontent.com/u/68877713/IMG_20140426_194809.jpg)

</comment><comment><USER61> I live full-time in an Airstream travel trailer with my wife.

This is my corner.. [http://www.watsonswander.com/assets/2014/02/TAW55485.jpg](http://www.watsonswander.com/assets/2014/02/TAW55485.jpg)

<comment><USER62> Love it! What a simple life. I tried to convince my wife to live on a boat but it was a no go with a new baby.

</comment></comment><comment><USER63> After kids ate up our spare bedrooms, my home office is a desk in the corner of the master bedroom with my MacBook Pro. I mounted a monitor on the wall with a swivel arm to clear a little desk space. A few hard drives for backups in the corner. Too much clutter on the top of the desk.

I often work from a chair in the living room or the dining room table as well. Or I go out to libraries, a hackerspace, McDonalds, sports bar, Barnes and Noble, etc. to work.

I do have a low-power, mini server stack out in the family room, next to the big TV. A Raspberry Pi, two Pogoplugs, a DDWRT router, a pile of hard drives.

</comment><comment><USER64> Darn, missed this thread yesterday. Here is mine. It's gone through some changes...it's never perfect.

[http://imgur.com/a/3R5kP](http://imgur.com/a/3R5kP)

</comment><comment><USER65> Like this: [http://youtu.be/GAJSnJE8Fu4](http://youtu.be/GAJSnJE8Fu4) :) full of junk and clutter. It is not a good example to follow

</comment><comment> cool-RR [https://ram.rachum.com/cv/images/workstation.jpg](https://ram.rachum.com/cv/images/workstation.jpg)

</comment><comment><USER66> I use either my coffee or dining table, both made of solid oak. If neither are available, I use the floor. Being a big music fan, I often drag a pair of portable speakers and a broken ipod around (currently hardcore, breakcore and Scott Joplin).

Although I use a laptop, I stick to a mouse, touchpads drive me up the wall. Generally speaking, I prefer my hardware ugly and robust, as opposed to sleek and fragile.

</comment><comment><USER67> Converted day 6'x6' walk in closet into my office.. Hung a 40" on the center of the wall, with 20" panel.. Kneeling chair, and storage for books and stuff around the top.. [http://imgur.com/PgLEaO3](http://imgur.com/PgLEaO3)

I thought it would feel cramped at first, but it doesn't.. Allows me much greater focus, and everything is in arms reach.

</comment><comment><USER68> Equipment. Equipment everywhere. You can't go wrong with scopes, frequency generators, logic analyzers, power supplies, and good ol' t-slot. This isn't quite my entire office but this should give you an idea:

[https://www.defaultstore.com/?q=node/42](https://www.defaultstore.com/?q=node/42)

It's only slightly less insane than my work office.

</comment><comment><USER69> If you need an idea, pls take a look here : [http://desk.cmiscm.com/](http://desk.cmiscm.com/)

<comment><USER70> Thanks for the link to desk photos.

But, sorry to say so, that's one of the worst websites I have seen in 2014 - <USER2> slow flash page with long animations, annoying sounds effects and bad UX (even for year 2011).

</comment></comment><comment><USER71> Photo: [http://bryan.cx/ptRk/3k1S0VoL](http://bryan.cx/ptRk/3k1S0VoL)

I usually try to keep my office pretty simple and clean. White parsons desks, aeron chair, cinema display and retina MBP.

I also have two Lifx bulbs in the lamps that I'm hoping to use for visual notifications when they open their API.

<comment><USER72> The API, providing iOS, Android and Ruby bindings, was released a few weeks ago:

      http://blog.lifx.co/2014/03/24/announcing-the-lifx-api/

I look forward to seeing what you come up with!

</comment></comment><comment><USER73> Desk: two sawhorses tables, + view on the left, + view on the right. Shared via G+ because we hipsters love dead technologies ;)

[https://plus.google.com/photos/118392785163397399948/albums/...](https://plus.google.com/photos/118392785163397399948/albums/6006614910159831297)

</comment><comment><USER74> Like this: [http://jseliger.wordpress.com/2012/09/23/the-geekdesk- writin...](http://jseliger.wordpress.com/2012/09/23/the-geekdesk-writing- space-post/) . The most notable part is the sit-stand desk. It would be very hard to go back to sitting desks only.

</comment><comment><USER75> I just moved my work setup back home. [https://mobile.twitter.com/singularityhack/media/grid?idx=7&...](https://mobile.twitter.com/singularityhack/media/grid?idx=7&tid=403274315568652288)

</comment><comment><USER76> I have a standing desk (adjustable but not automatic to sitting desk) but I'm on and off of it. My work setup anywhere is pretty much just my laptop majority of the time regardless of where I'm using it.

</comment><comment><USER77> I've created a standing desk by using wallshelves.

[https://secure.verwijs.org/tmp/standing_desk.jpg](https://secure.verwijs.org/tmp/standing_desk.jpg)

</comment><comment><USER78> Nice and clean: [https://pbs.twimg.com/media/BlWngueCYAAQnl5.jpg:large](https://pbs.twimg.com/media/BlWngueCYAAQnl5.jpg:large)

</comment><comment><USER79> Zenbook, cottage veranda or garden, between two rivers 15km from Prague (1h on bike) ... just now, many birds are singing here from March to July

</comment><comment><USER80> Desk, chair, laptop. That's really it for me and I find it's all I need. Although I am interested in trying a standing desk.

<comment><USER81> A 1.25m tall chest of drawers full of clothes and stuff doubles as a standing desk, so my inventory is "laptop" :)

<comment><USER80> I think I might try out this option next time I happen to drop by IKEA. [http://iamnotaprogrammer.com/Ikea-Standing-desk- for-22-dolla...](http://iamnotaprogrammer.com/Ikea-Standing-desk- for-22-dollars.html)

</comment></comment></comment><comment><USER82> Anyone tried deskless workstations (sitting on floor)?

<comment><USER83> I work from home full time, and worked almost exclusively from my sofa for about six months thanks to moving/space considerations. I don't recommend typing a lot in any environment where you don't have arm or elbow support, it's painful.

</comment></comment><comment><USER84> Like Tony Stark's basement.

</comment><comment><USER85> I moved out of the US a year ago to travel around the world but never left the first city I visited in asia. I work from home. My split level condo is on the 40th floor with a view of the sunset, ocean, and the city skyline. My office moves from living room to bedroom depending on houseguests. I have 2 27" apple cinema displays; each on its own aidata laptop desk that can be raised so I can stand or sit. I have a chair that can recline from sitting position to laying flat. I have a vibrating exercise machine that I stand on when I'm tired of sitting. I have a surround system and a projector so I can watch hd movies across from where I work. The projector screen is about 8 feet wide (I wish I had the space to project a larger image). The projector is hooked up to a macbook pro with a 4TB disk with about 1200 movies.

Despite all that, I think the best part is that my gf (who is half my age) hangs out on the couch next to me.

<comment><USER86> > Despite all that, I think the best part is that my gf (who is half my age) > hangs out on the couch next to me.

Sexpat?

<comment><USER87> Nah, just your typical LBH.

<comment><USER86> Just giving you a hard time. I'm in the same boat ;)

</comment></comment></comment></comment><comment><USER88> Question: How does your office look like [Microsoft's] Answer: Because we [employed the same interior decorator].

Question: How does your office look? Answer: It looks nice.

Question: What does your office look like? Answer: It uses XYZ colour scheme and has lots of tables and chairs.

Question: What does your [ideal] office look like? Answer: I wish it had....

[For background: I am not big into being pedantic about 'correct' grammar, but areas where small mistakes do create hours worth of confusion, sometimes magnitudes of effect more (particularly within global collaborative environments).]

<comment><USER89> Looks like most other people in this thread got the picture. This is overly pedantic.</comment></comment>


Google's DeepMind predicts 3D shapes of proteins - <AUTHOR> https://www.theguardian.com/science/2018/dec/02/google-deepminds-ai-program-alphafold-predicts-3d-shapes-of-proteins <comment><USER2> Hate to be that guy, but the headline should reflect that DeepMind was able to generate better predictions of protein structure than were the other contest entrants. No entrants, including DeepMind were able to perfectly predict protein structures.

</comment><comment><USER3> tl;dr- They used AI-guided optimization to seek optimal protein foldings.

\---

Proteins are basically chains of amino acids. Instead of remaining straight rods or something, they tend wrap back on themselves. Researchers are interested in the folded configurations that have the lowest thermodynamic free energy, since those configurations are the ones that should be most stable (and thus probably what proteins are like in the body).

However, the process of finding the optimal folded configuration isn't easy. So, they had some AI try to do it.

Out of 98 competing AI, Google's AI "AlphaFold" got the best configuration (lowest free energy) for 25 out of 43 of the proteins that the AI were supposed to fold.

Humans who're interested in trying their hand at it might like [Foldit]([https://en.wikipedia.org/wiki/Foldit](https://en.wikipedia.org/wiki/Foldit)).</comment>


Car buyers shun electric vehicles not named Tesla - <AUTHOR> https://www.latimes.com/business/story/2020-01-17/ev-sales-fizzle <comment><USER2> Could it be because nobody trusts the legacy car manufacturers to deliver something solid for a product that heavily relies on electronics & software?

Given the sad state of infotainment systems and the overall UX of non-Tesla cars I would not buy an electric car from such a manufacturer.

The legacy manufacturers are trying to cram more software & screens in cars (and will need to for the electric ones) but don't follow the software development process; the software and UX still feels like an afterthought. Tesla on the other hand operates like a modern software company (sometimes too much and it "moves fast and breaks things" but everyone makes mistakes and overall it feels like they're going in the right direction).

</comment><comment><USER3> I'm sitting on the sidelines until there is a Toyota or Lexus SUV that I can drive in the carpool lane.

</comment><comment><AUTHOR> Where I live -- 100 year old house, 1,500 square feet -- setting up a charger for one vehicle would require upgrading the house's entire electrical system.

<comment><USER4> The electric company where I live is upgrading service to the pole everywhere in anticipation of this.</comment></comment>


Japan's Biggest Bank Is Releasing Its Own Cryptocurrency in March - <AUTHOR> https://www.investopedia.com/news/japans-biggest-bank-releasing-its-own-cryptocurrency-march/ <comment><USER2> It will be interesting to see the financial world move toward blockchain. It's a better technology in many ways, but adoption is slow in big institutions. There will be an arms race between cryptoanarchists (who want total anonymity, and can cryptographically ensure it) and governments & banks (who want total traceability, and can cryptographically ensure it).

It's hard to predict, but I expect to see a corporatization/cephalization of blockchain over the next 10 years similar to that of the internet in the early 2000s, which had also been something of a wild west.</comment>


Uber rape victim sues Uber, says execs got her medical records - <AUTHOR> https://arstechnica.com/tech-policy/2017/06/uber-rape-victim-sues-uber-says-execs-got-her-medical-records/ <comment><USER2> The penalties associated with white collar crime are not effective deterrents. If you have billions of dollars and the worst that can happen is that you pay a couple million in fines, then you are effectively above the law. This was evident in the subprime mortgage crisis. Vast communities were destroyed with limited consequences for the perpetrators.

I would personally like to see white collar crime lead to incarceration more often as that seems like a stronger deterrent. Having said that, I am not deeply knowledgeable about the facts of this particular case.

<comment><USER3> I'd accept a minimum statuatory fine of 100% of the profits from your criminal activities. White collar crime, when discovered, should always be a net loss for the plaintiff's balance sheet.

It's not perfect, but if you make ten billion dollars from fraud, I feel like first you should lose the whole ten billion dollars as a matter of course, after which we can start discussing what if any punishment is appropriate.

<comment><USER4> "It's not perfect, but if you make ten billion dollars from fraud,"

I don't see how this applies to this matter. From what I read in the article, Uber was being sued and investigating a crime that occurred through the application of their service. In other words, if they did something wrong, it wasn't in the pursuit of profit, it was in defense of another lawsuit or the ultimate private settlement thereof.

<comment><USER5> Yes, however they still profit from winning such lawsuits, if this was typical behavior, then theoretically they should be on the hook for any money they avoided paying by using such methods. For example if they were invading the privacy of the people in the drivers lawsuit (where they ended up paying 100 million) and used it to win instead, then that would be the amount they should be on the hook for. The point is that any illegal behavior in corporate governance means the corporation and the people who stand to benefit from it automatically loose entirely on the related matters. Which is guaranteed to be effective at stopping illegal behavior.

Of course this is in the case of criminal fraud, which hasn't been brought up in this news case you are correct.

</comment></comment></comment></comment><comment><USER6> Previous submissions:

1\. [https://news.ycombinator.com/item?id=14562331](https://news.ycombinator.com/item?id=14562331) (was flagged)

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

3\. [https://news.ycombinator.com/item?id=14562862](https://news.ycombinator.com/item?id=14562862)

Other sources:

1\. The New York Times: _Uber Is Sued by Woman Who Was Raped by One of Its Drivers in India_ from [https://www.nytimes.com/2017/06/15/technology/uber- india-rap...](https://www.nytimes.com/2017/06/15/technology/uber-india-rape- lawsuit.html)

2\. Bloomberg: _Uber Accused of `Rape Denialism ' by Victim of India Assault_ from [https://www.bloomberg.com/news/articles/2017-06-15/uber- sued...](https://www.bloomberg.com/news/articles/2017-06-15/uber-sued-by- india-rape-victim-over-alleged-privacy-violation)

3\. CNBC: _Rape victim files new lawsuit against Uber_ from [http://www.cnbc.com/2017/06/15/rape-victim-files-new- lawsuit...](http://www.cnbc.com/2017/06/15/rape-victim-files-new-lawsuit- against-uber.html)

Edited to correct formatting.

</comment><comment><USER7> I guess India doesn't have HIPPA style regulations (or if they do, they're just unenforced). I haven't been there in decades, but I remember having to take x-rays and blood test results between doctors. There was no real centralized health system at the time.

So the crime, sharing personal health records, occurred in India. But it was an American victim, American company and American employees allegedly getting and sharing her health information.

I'm interested in how this plays out legally.

<comment><USER8> The existence of HIPAA has little to do with whether you have to take your records across doctors.

HIPAA requires that our medical data is secured when stored at a medical facility, but I still have to drive over with CDs and printed X rays if I have to go to different doctors and specialists. Doctor's referrals are still paper printouts, and you have to show up early to any doctor as a new patient, and fill out the same form about your medical history all over again. Things are still faxed, sometimes emailed.

This problem is still completely unsolved in the US. The closest thing is maybe if you're going across doctors in one hospital or hospital network, then your records are electronically "transferred"

<comment><USER9> > The existence of HIPAA has little to do with whether you have to take your > records across doctors.

Well, actually HIPAA stands for "Health Insurance Portability and Accountability Act" \- it's specifically _about_ making health records portable.

The security provisions were it's more minor, yet, best know part.

<comment><USER10> > Well, actually HIPAA stands for "Health Insurance Portability and > Accountability Act" \- it's specifically about making health records > portable.

No, it's about making health _insurance_ portable. [0] (The Security and Privacy pieces—as well as the IT standards bits—are part of the one "accountability" piece of the title, and largely irrelevant to the "portability" piece.)

Health _records_ , in terms of interoperability, weren't a big focus in the legislation (they became a bigger focus with meaningful use and related rules in the ACA.)

EDIT: to be fair, though, access to your own records is also part of the accountability part, which isn't exactly portability of records, but it's related.

[0] See, e.g , [http://www.investopedia.com/terms/p/portability.asp](http://www.investopedia.com/terms/p/portability.asp)

</comment></comment></comment></comment><comment><USER11> There's nothing in the article - but had Uber said anything as to why they wanted the records? Or why on earth the CEO of the company needed to see them? Deeply repugnant.

<comment><USER12> >The complaint goes on to allege that Alexander shared the records with Kalanick and Emil Michael, an Uber executive who was fired earlier this week. According to the complaint, the men "discussed the records among themselves and with other staff at Uber, speculating that Plaintiff had made up the brutal rape in collusion with a rival of Uber in India to undermine Uber's business."

</comment></comment><comment><USER13> I think the only shoe left to drop for Uber is the great convergence where Donald Trump takes over as CEO.

<comment><USER14> Trump's Law - any sufficiently long discussion thread will involve a shoehorned reference to our current President no matter how tenuous or even non-existent.

</comment></comment><comment><USER15> This is getting old, folks. [https://help.uber.com/h/24010fe7-7a67-4ee5-9938-c734000b144a](https://help.uber.com/h/24010fe7-7a67-4ee5-9938-c734000b144a)

<comment><USER16> _This is getting old, folks._

Not to the victim it ain't.

<comment><USER15> I never meant to imply that was the case. As a person that hasn't been harmed by this company, I see this problem as having gotten out of hand and in need of intervention. As someone who has been harmed by other people, I find it troubling that some folks still continue to utilize a product that is actively causing harm to others, and violating their rights.

The fact is that given the heap of problems seemingly continuously coming out of Uber, the company doesn't seem to be changing, and these problems aren't slowing down.

Uber needs to change practice, and we need to communicate to the market that this behavior isn't acceptable via our wallets; they don't really seem to understand any other message. If it means that this company ultimately folds under the weight of these problems, so be it. The message needs to be clear to others: this is NOT acceptable.

</comment></comment></comment><comment><USER6> In case someone is interested in how this story did on the front page: [http://hnrankings.info/14564112/](http://hnrankings.info/14564112/) .

</comment><comment><USER17> It seems like the lawsuit should be thrown out for two reasons:

* They already settled the lawsuit. At the very least, Doe should forfeit the money she already received before beginning this lawsuit regarding substantially the same matter. Otherwise, what's the point of settling if you can't forget about it?

* The onus for keeping medical records private is usually on the medical provider, not on the people interested in obtaining them.

<comment><USER18> "They already settled the lawsuit."

This is a separate lawsuit. This is about them illegally obtaining her medical records.

"At the very least, Doe should forfeit the money she already received before beginning this lawsuit regarding substantially the same matter. "

No. This is a separate action.

"Otherwise, what's the point of settling if you can't forget about the matter?"

Settling does not give you carte blanche to keep being shitty.

"The onus for keeping medical records private is usually on the medical provider, not on the people interested in obtaining them."

How does this excuse Uber's behavior in the slightest?</comment></comment>


Face2Face: Real-time Face Capture and Reenactment of RGB Videos [video] - <AUTHOR> https://www.youtube.com/watch?v=ohmajJTcpNk <comment><USER2> This demo is doubly amazing: First, the obviously impressive (and slightly unsettling in its implications) manipulation of the target face, but second, the fact that this is all being done with a _single RGB camera._

Consider the massive rig required to perform the at-the-time groundbreaking performance capture for the game L.A. Noire: [http://i.kinja-img.com/gawker- media/image/upload/s--y6fmsAIU...](http://i.kinja-img.com/gawker- media/image/upload/s--y6fmsAIU--/18mijbcsmp01ijpg.jpg) This is how far computer vision has come in five years.

<comment><USER3> In terms of gaming applications this could be huge for virtual reality avatars. You can still be anonymous but still convey facial expressions with a webcam!

<comment><USER4> I'm curious how you think a webcam will be able to read your facial expression when you have a VR headset on you face.

<comment><USER5> smaller vr rigs should just cover the eyes. or maybe there is a small camera hanging under the vr rig to capture face elements.

<comment><USER6> This research uses a camera to capture the mouth area and strain sensors for the upper face (that part can obviously be improved).

[http://www.hao-li.com/Hao_Li/Hao_Li_- _publications_%5BFacial...](http://www.hao-li.com/Hao_Li/Hao_Li_- _publications_%5BFacial_Performance_Sensing_Head-Mounted_Display%5D.html)

</comment></comment></comment></comment></comment><comment><USER7> This is insanely awesome. Something that comes to my mind is the use of this for dubbing movies and TV series; I'm very sensitive about correctly syncing what's being said to what we see, to the point where I only watch movies in their native tongue - even if I don't know the language and need subtitles. This could be a game-changer.

<comment><USER8> I'm curious, how do you both read subtitles and watch that the sound is properly synced to an actor's lips? I can't read that fast, so I spend 80% of my time "watching a movie" simply reading text on the bottom of the screen.

<comment><USER9>
        > I can't read that fast

I can't speak for the op, but I can read a great deal faster than most people speak.

</comment></comment></comment><comment><USER10> Very well done. The best part is how they re-enact the mouth/teeth to look so real by capturing it by sampling earlier parts in the video to then use that on the non expression still or loop. I was blown away when Trump's teeth looked so real then they explained this process and why.

This could be huge (yuuuge) in games and virtual spaces. At GDC Unreal 4 has a demo recently and seems we are approaching that era[1]

[1] [https://youtu.be/JbQSpfWUs4I?t=6m](https://youtu.be/JbQSpfWUs4I?t=6m)

</comment><comment><USER11> One of the barriers existing in webcam meetings is the inability to make eye contact. It seems subtle but I think it is more important than one might intuitively think.

I've thought a lot about how to overcome this and came up with nothing but cameras beneath the screen (which Apple seems to have worked on but we have yet to see it: [http://appleinsider.com/articles/09/01/08/apple_files_patent...](http://appleinsider.com/articles/09/01/08/apple_files_patent_for_camera_hidden_behind_display)). This technology could possibly provide a competing solution.

</comment><comment><USER12> Discerning fake video from real just got a lot harder. Video is one of the last bastions of honest evidence.

<comment><AUTHOR> The data vacuuming companies (FB, Google, ad networks, etc.) collect the information about us required to know _how_ to manipulate us and technologies such as this one represent the tools to actually _get it done_.

</comment></comment><comment><USER13> Conan could use this for his fake celebrity interviews instead of just cutting the mouth out of an image. :)

</comment><comment><USER14> Imagine live edit of your video conversations, that attaches joyful emotions to any mention of an advertised brand.

</comment><comment><USER15> The paper is great, but I wanna see some source code!

<comment><USER16> Where can I find the paper?

</comment></comment><comment><USER17> The video made me feel very uncomfortable, and it takes a lot to make me feel that way.

</comment><comment><USER18> Faking news got an order of magnitude easier :)

</comment><comment><USER19> It would be cool to use this to fix movie footage in post production. You could just copy a face over if the actor screwed up

<comment><USER3> Or bringing back dead actors using past footage!

</comment></comment><comment><USER20> What is _Target Actor_ and what is _Reenactment Result?_ The former looks better to me.

<comment><USER21> Taget actor is the source material that they're changing, and the latter is the result of that.

</comment></comment><comment><USER22> Does anyone have the link to the paper?

<comment><USER23> [http://www.ieee.org/conferences_events/conferences/conferenc...](http://www.ieee.org/conferences_events/conferences/conferencedetails/index.html?Conf_ID=33180)

</comment></comment><comment><USER24> Terrifying, amazing but terrifying.

</comment><comment><USER25> This is impressive.

</comment><comment><USER26> The title is really underwhelming compared to how cool the demo is.

</comment><comment><USER27> Hilarious and scary at the same time. The admissibility of videos in courts is becoming more and more questionable.

</comment><comment><USER28> Wow.</comment>


Turntable Live: A new platform to support artists with Live interactive Shows - <AUTHOR> http://www.turntable.com/

<comment><USER2> Wow - I don't remember a company "pivoting" so much, so often, and so drastically as the Turntable team has done. First it was a social DJ site/app, then they launched Piki but shut it down after less than a year [0], and now this. Kudos to them for not quitting - it takes a lot of resolve (and money) to try to break paradigms and move into new markets.

[0] [http://blog.turntable.fm/post/60847013839/soundcloud-and- upl...](http://blog.turntable.fm/post/60847013839/soundcloud-and-uploads)

</comment><comment><USER3> I've been expecting something like this to happen. It is expensive for small bands who often can hit only a few venues. But Tunetable should arrange for studios other than NYC. There are plenty of places around the world where bands could play and livestream.</comment>


With React Native it's not all sugar and spice - <AUTHOR> https://blog.addjam.com/react-native-its-not-all-sugar-and-spice-cb5d6b25eae9#.kkwvjrg7h <comment><USER2> I'm working on an Android app.

I use react-native solely for the UI which I update, redux-style, with a state-tree. The state and all it's transition and event-handling is done in Kotlin/Java. I've written a small helper that generates kotlin-Interfaces from the react/jsx-files and automatically connects everything.

This way I have react's HotReload and the other benefits for UI-design and a proper typed language and IDE for networking and everything else. Including compile-time checking of events and properties of the UI.

Plus: Kotlin can compile to JavaScript, so if I ever want to port the whole thing to iOS, i just have to switch out a few APIs.

<comment><USER3> Just to mention, if you enjoy Kotlin - you might want to try Anvil+Bansa. It is like React+Redux, but for Kotlin (or Java). Resulting APKs are much smaller than React Native and don't rely on jni code.

[http://anvil.site/](http://anvil.site/)

[https://github.com/brianegan/bansa](https://github.com/brianegan/bansa)

<comment><USER2> I've thought about Anvil, but I like React and I can reuse stuff from my web- development. Like tachyons styling [0].

Regarding bansa: Sounds nice, but I've never seen the benefit of using a library for state and state-reduction. You can implement and customise for yourself in less than 50 lines. (I don't use the redux library on the web either)

The only thing I would like is being able to reuse data-structures of react- native, so they won't get serialized all the time.

Thanks for the tips, though!

[0] [https://github.com/fab1an/react-native- tachyons](https://github.com/fab1an/react-native-tachyons)

</comment></comment></comment><comment><USER4> I find irrelevant gifs embedded in a blog post like this make the entire article unreadable. It's distracting and annoying.

<comment><USER5> It's supposed to be distracting, but moodlifting, seeing the post exposes essentially negative oppoinions. Of course they are devoid of content.

<comment><USER6> I agree. A lot of times I'm just perusing HN for a few minutes as a break; I'm not looking for heavy reading. Setting up the content like this gives me a quick little chuckle in-between paragraphs and I move to the next. Rather than _oh god this is too long - next link_.

<comment><USER7> I've spent an hour reading a 20,000 word article. Don't go down the same path I did!

</comment></comment></comment></comment><comment><USER8> The criticism on the tooling seems excessive for the benefits it provides. On one hand you don't spend the time equally on the terminal, the text editor, dev tools and the platform's IDE. You'll normally spend most of your time in the text editor and the emulator. You'll have to use the other tools here and there, but in exchange most of your code will be shared across platforms.

Regarding code organization, I found redux to be a well established tool with clear patterns.

</comment><comment><USER9> > With each framework or platform we develop with we need to adapt to the > conventions. From back end work using frameworks like Rails and Elixir to > native mobile projects each has it's own way to hang together a project.

 _Some_ have their own way to hang together a project. Much of the React ecosystem is not so opinionated. A lot of JavaScript out there exists in codebases in a variety of languages and frameworks—Rails, PHP, Node... you name it. Modern JavaScript build tools reflect the need for script sources and build targets to reside anywhere based on what the site JavaScript is being used _in_. I'd say this historical influence is showing in React Native.

However, I also think this makes sense for React Native. It's possible it's getting introduced into apps which already have conventions based on the platform the app is for and the team writing it. It might not make sense for React Native to come up with a new set of conventions when you're working with multiple platforms and existing codebases.

> But the real value is in sharing code, maintaining projects and on boarding > new members to a project team. [...] We've spent a long time viewing > projects on GitHub and picking and choosing what we feel is the best way a > project should be structured.

Conventions—whether they're forced on you by the framework authors or developed by the community—are still part of learning a framework and working with it for the first time. I'd say what author came away with here is even more important than just having _some_ convention—they landed with something they really think is best for their projects! The real cost here is that onboarding developers will also include time for them to get familiar with this project structure, but is that really so much to ask?

<comment><USER7> React is not a framework. It's just a templating library with a preprocessing step (JSX) and a diffing algorithm that efficiently renders to the DOM.

</comment></comment><comment><USER10> I wouldnt recommend react for any app which you want togo big. In the end, you need to rewrite it to native code anyway, because you want to use the latest feature, or because you have bugs because react native doesnt follow the platform guidelines (activities, activity stack, etc)

</comment><comment><USER5> > When you develop a fully native app you do it pretty much in one place. On > iOS you're in Xcode, for Android you're in Android Studio. With React Native > you have a terminal (with a couple of panes), a text editor, perhaps Redux > Remote DevTools plus your IDE for the platform you're targeting.

It's not like those IDEs can't be configured to work with the raw tools.

</comment><comment><USER11> If you want a single IDE, vscode is really great.

<comment><AUTHOR> Yeah I'm going to give vscode a shot.

</comment></comment><comment><USER12> You should do your due diligence before using a framework/library/technology for production code. Don't just follow the hype.

[http://www.sheshbabu.com/posts/guidelines-to-choose-a- javasc...](http://www.sheshbabu.com/posts/guidelines-to-choose-a-javascript- library/)

<comment><USER13> The case for React is strong in this respect, because Facebook has many lines of React committed to important production code. Your problems are also their problems... unlike Angular, which Google isn't relying on in production code nearly as much.

<comment><USER12> Yep, React is a good choice because FB is using it in production in their consumer facing apps. But React Native is not used that way by FB (yet?)

<comment><USER14> FB are using Reactive Native for their Groups, Ad Manager and F8 Conference apps: [https://facebook.github.io/react- native/showcase.html](https://facebook.github.io/react-native/showcase.html)

</comment></comment></comment></comment><comment><USER15> I don't mind switching between different contexts, I frequent the terminal for git an other stuff anyway. I think it is fairly magic that one may finally develop the same code for both iOS and Android. Huge productivity win, especially using Clojurescript!

I agree with the instability though, nothing for someone afraid of rumbling around in the RN source code to solve things like this [https://github.com/facebook/react- native/issues/7720](https://github.com/facebook/react-native/issues/7720)

</comment><comment><USER16> Many of the points made in the article boil down to React Native still being a relatively new framework, and the team and community behind it iterating _very_ quickly.

Sure there will be growing pains starting out, but the benefits that are coming from this new direction are, in my opinion, worth all the effort. I've written several apps utilizing React Native now, and love the efficiency boost it gives me.

</comment><comment><USER17> If you're looking for an all-in-one development environment, my team is building an IDE specifically for React Native. It's free and open source.

Deco IDE

[https://www.decosoftware.com/](https://www.decosoftware.com/)

[https://github.com/decosoftware/deco- ide](https://github.com/decosoftware/deco-ide)

<comment><USER18> I'd like to use it! But it's not available for Linux (oh, the irony).

</comment></comment><comment><USER19> HN community, how would I make my core model + business logic cross-platform? I want to re-use the model and its behavior (like some data evaluators) in my Web app, on Android and iOS without rewriting it every time from scratch. I'm fine with creating native code for the UI. but I'd like to share at least some code. What would you recommend?

<comment><USER15> If you use react native on mobile and react on the web the core model and business logic can easily be shared since it is just pure js. And you can use any of the languages that transpiles to js: TypeScript, Clojurescript etc.

<comment><USER19> What about performance and the "overhead" that React Native might introduce?

<comment><USER15> The performance is impacted, avoiding premature optimizations I haven't looked into that part yet though. Without any performance optimizations I'm experiencing performance better than HTML5 but not really on par with native. To me the value of sharing the logic and the crazy fast development speed is more valuable than a few milliseconds of delay. At least in this stage.

</comment></comment></comment></comment><comment><USER20> For me C++ is all I need for portable native code, no need to add extra layers that kind of work, that only increase code entropy and debugging efforts.

Directly available in iOS, Android, WP, Tizen, Ubuntu SDKs.

The only major problem is the way Google disregards their NDK stack, while Microsoft and NVidia engineers are able to do what Google PhDs are not.

<comment><USER21> How do you build the ui? Just push pixels? Or vertices? Some library maybe?

<comment><USER20> Since I care mostly about game related stuff, Cocos2D-x, SDL, openFrameworks.

When doing more app like coding, following MVVM patterns with the view written in the platform language.

On iOS you can use Objective-C++, on WP and UWP C++/CX.

Android is the worst because Google keeps the NDK at an arm's length, but projects like Djinni and SafeJNI help.

If you don't bother to provide a native experience, but still enjoy the portability of C++'s code, there is always Qt and QML.</comment></comment></comment>


How old is "too old"? - <AUTHOR> http://programmers.stackexchange.com/questions/370/how-old-is-too-old <comment><USER2> Age doesn't breed competence, just as it doesn't breed incompetence either.</comment>


Using an environment tracker repository? - <AUTHOR> https://opencredo.com/versioning-a-microservice-system-with-git/ <comment><AUTHOR> Has anyone played with the concept of an environment tracker repository? If so, what is your experience?

The use case would be providing a source of truth for all versions of services deployed during a given release.</comment>