Premium WordPress GPL Themes/Plugin Debate Heats Up Again - <AUTHOR> http://www.techieinsider.com/news/12021 <comment><USER2> Honestly WordPress is starting to feel like Movable Type right before they jumped the shark. You know I really wish they'd focus on improving WordPress itself rather than getting distracted by legal actions and selling premium hosting plans. In fact if there was a self hosted version of Tumblr I'd most likely jump ship within a few seconds.</comment>


Huawei has reportedly stopped its smartphone production after US blacklisting - <AUTHOR> https://www.businessinsider.com/huawei-smartphone-production-us-blacklist-2019-5 <comment><USER2> I stopped reading when I ran into this:

 _Google's Android smartphone operating system is the backbone of Huawei's massive smartphone business — but in the next three months, it will stop getting updates on Huawei's devices. This will give time for Huawei to prepare its own OS._

I can't imagine how it would be even remotely possible to write an operating system in three months!

If all they mean by "OS" is to replace the closed parts of Android that they lost access to, three months still probably isn't anywhere near enough (unless they started working on that a long time ago and happen to be nearly finished with it).

<comment><USER3> Don't they already need to have replacements for many of Google-y bits for the Chinese market?

</comment></comment><comment><USER4> Since Google is/was already banned in China, how did phone manufacturers circumvent that in order to use Android in the past?

Did they just sort of turn a blind eye towards it or something?</comment>


The Data Driven Cheating of Moneyball - <AUTHOR> http://priceonomics.com/the-data-driven-cheating-of-moneyball/

<comment><AUTHOR> Key paragraphs =>

"As the entire league turned to sabermetrics, the market for baseball talent reflected its insights, neutralizing Oakland's advantage. The only way to gain an edge was to find new insights.

Today, baseball general managers' search for a undervalued players has led them to sign and play catchers who are better cheaters. Or, more charitably, catchers with a talent for convincing umpires that a ball was actually a strike."</comment>


CPU of the Day: IBM Micro/370 – True Mainframe on a chip (2013) - <AUTHOR> http://www.cpushack.com/2013/03/22/cpu-of-the-day-ibm-micro-370/ <comment><USER2> "Today's System z, itself an evolution of the original System/360 and 370, can still run many of the original programs, unmodified, from 50 years ago. This is a testament to 2 things, the wide adoption of the IBM systems, and the forward thinking of IBM."

Or rather the crazy levels backwards compatibility and effort to build what is basically a hardware emulator for a 50 year old machine. Put another way, IBM isn't making native ficon disks, they build a fancy controller that uses SAS/etc disks and presents them as ficon, which runs on the same physical transport as fiber channel, rather replacing much of the protocol stack. The resulting MOD3 or MOD9/etc disks appear like 3390 model 9 disks circa the late 80's early 90's. AKA instead of a room sized disk they are basically virtual with all the overhead that implies.

The CPU's are of course native, but like all the other ISA's reflect a more modern design style of basically cracking the CISC instructions into an out of order superscalar CPU and only using "micro code" for the really complex instructions.

<comment><USER3> while the iSeries (think AS/400) has a shorter history many programs compiled to earlier versions run on later versions due to the separation of hardware layer from operating system layer. The system can recompile existing programs without human usable/retrievable source due to the method use to encode them.

there is code from the eighties running in slightly updated form on our z and even the i series systems have twenty year old code. both systems have web facing extensions that directly map to older code (as in, green screen 3270/5250 that has no change to its code) pretty much seamlessly. new code is often employed as necessary but the idea that stuff that worked well that is a decade or more old still works today is what amazes me about the various IBM platforms

<comment><USER4> So much of our iSeries code has _(c) 1979_ in the header. Nearly 40 years.

</comment></comment></comment><comment><USER5> That would have been pretty useful during my college years. Most of the classes were on a IBM 370. I still have my assembly book and the assembly banana book. XEDIT was an interesting editor.

It was an interesting era since pretty much everyone trudged over to the computer lab to use the terminals to do their assignments. It does generate a bit of community in groups of people going through their degree at the same time.

It would have been interesting if IBM had got Motorola to second source the chip and used it instead of the 8088. Would have been a very different PC era.

</comment><comment><USER6> Nick gave an excellent talk about this chip at the 1995 Microprocessor Forum (which was around the 25th anniversary of the IBM/370). It was really impressive that IBM could make the PC using the 8086 architecture because there was such corporate alignment around the 3x0 architecture for all computing that was IBM. Nick mentioned that in some ways the PC division felt threatened by the notion that he had created a way to have the 370 architecture go "from top to bottom" on their product line.

<comment><USER7> The PC was created due to the consent decree. IBM was __forced __to use other people 's processors, OS, hardware interfaces, etc. If it wasn't for the consent decree the world would look very different.

<comment><USER8> We were getting personal computers one way or another, there was a growing tide of CP/M machines inching forward by 1980.

The IBM label on the product of a skunkworks division in Florida just put the blessing of Mercury on that particular outcome.

</comment></comment></comment><comment><USER9> The /370 vision of a single chip mainframe was realized, I think the article ends prematurely. The first card I've actually seen as such is the P/370 and that may have been a productized version of this chip. There were some other skunk works projects that might predate that [http://www.garlic.com/~lynn/2002d.html#4](http://www.garlic.com/~lynn/2002d.html#4).

As others pointed out "real" S/390s also switched to CMOS microprocessors in the 90s. There's some good reading in [http://ps-2.kev009.com/ohlandl/P390/s390_i- o_continues.txt](http://ps-2.kev009.com/ohlandl/P390/s390_i-o_continues.txt) on the evolution of the I/O subsystems because I/O is what makes mainframes interesting :)

</comment><comment><USER10> I had the joy of using the XT/370\. It was extremely cool to see the "mainframe" run in a box. But it was dog slow compared to a single user session on the mainframe (which IIRC was a 4341).

The 360/370 is/was an incredible architecture. It supported virtualization decades before anyone outside a small group of people even knew what that was. The instruction set was rich and easy to use which was important as a lot of stuff got written in it directly those days. Unlike Unix which was mostly written in C most of the 370 OSes of the time were written in assembly.

</comment><comment><USER11> That's neat as heck. A mainframe on a M68K for under four grand? I'd have believed the emulation but not the price if someone told me. The RISC workstations were so expensive. Add the word mainframe to a lower price than that & I'd assume you were selling me a lemon. Haha.

</comment><comment><USER12> Note that the IBM 9672 was the first actual mainframe with a CMOS microprocessor circa the early 1990s. Now all mainframes are powered by microprocessors.

</comment><comment><USER13> From the article:

"Not all processors are designed this way, some designs,known as random logic, the op codes control the actual hardware directly"

An interesting note is that the name "random logic" comes from the fact that when you look at a photomicrograph of a hard-wired CPU design you don't see any discernible geometric patterns like you do on a microcoded CPU.

</comment><comment><USER14> The end of the (excellent) article mentions IBM's next minicomputers were 80386-based. Which were these?

<comment><USER15> I presume it is really talking about PS/2 systems running OS/2 or AIX, even though they weren't commonly called "minicomputers".

<comment><USER8> Right, minicomputers were the fridge-sized Vaxen and their ilk.

(Speaking of fridges, that was the era of 'computer rooms' with raised floors and positive pressure air conditioning at a fairly small scale - might have one serving one or two dozen people. Comms were poor.)</comment></comment></comment>


Ask HN: Why have the newsyc20/newsyc50 Twitter bots stopped tweeting? - <AUTHOR> The similar accounts newsyc100, newsyc150, etc. continue to send out stories, but nothing below 100 points. <comment><USER2> For the 20 and 50 one I get the warnings

"Caution: This account is temporarily restricted. You're seeing this warning because there has been some unusual activity from this account. Do you still want to view it?"

I think that twitter doesn't allow the account to tweet and the owner of the account got an email with instructions.</comment>


Hacker's ruinous run ends in capture - <AUTHOR> http://www.recordnet.com/apps/pbcs.dll/article?AID=/20140514/A_NEWS0803/405140324

<comment><USER2> Although I really have disdain for people like this, and I condemn his actions. He's clearly got a few screws loose or his terrorist toddler years seem to have lapsed into puberty..

But I thought that t-shirt was a nice touch..

</comment><comment><USER3> That's not what "hacker" means.

<comment><USER4> [http://www.merriam-webster.com/dictionary/hacker](http://www.merriam- webster.com/dictionary/hacker)

Full Definition of HACKER

1: one that hacks

2: a person who is inexperienced or unskilled at a particular activity <a tennis hacker>

3: an expert at programming and solving problems with a computer

4: a person who illegally gains access to and sometimes tampers with information in a computer system

<comment><USER3> Good thing we're all hackers here (hackernews right?)</comment></comment></comment>


New 3-D printing technique inspired by 'Terminator 2' - <AUTHOR> http://www.washingtonpost.com/news/speaking-of-science/wp/2015/03/16/this-new-technology-blows-3d-printing-out-of-the-water-literally/

<comment><USER2> Unless the inventor got his inspiration for the technique from the movie, the phrase, "Inspired by Terminator 2" just becomes an outright falsehood and click-bait. Has our society become so pop-culture driven that even news outlets like the Washington Post has to do this?

<comment><USER3> That phrase comes from the inventors themselves in the TED talk announcing the technique.

</comment></comment><comment><USER4> [http://3dprint.com/53286/gizmo-3d-printers- fastest/](http://3dprint.com/53286/gizmo-3d-printers-fastest/)

</comment><comment><USER5> They compare it to filament printers, which isn't very helpful. How does it differ from other photosensitive resin-based printers like the Form1+?

<comment><USER6> [https://www.reddit.com/r/3Dprinting/comments/2zlwxd/carbon3d...](https://www.reddit.com/r/3Dprinting/comments/2zlwxd/carbon3ds_new_printer_discussion_clip_is_a/)</comment></comment>


Show HN: Doppins – Automatic dependency upgrades through GitHub pull requests - <AUTHOR> https://doppins.com/ <comment><USER2> Another paid service that replaces a single CLI command or a Git hook...

<comment><AUTHOR> Hi! Doppins is free for open-source (and currently also private) projects, but I get your point. What I like about using Doppins on my own projects is that I don't have to be actively developing a project for it to be useful - as long as a project has enough tests to make it safe to merge pull requests that pass continuous integration you can stay up to date on security updates and similar quite easily.</comment></comment>


Emac's Org Mode will improve your software engineering - <AUTHOR> https://medium.com/@rtotheohan/emac-s-org-mode-will-improve-your-software-engineering-d7bc2f30a0#.r2ohguph1 <comment><USER2> I don't know why so many people make the point that hierarchical structures are how the brain works. Graphical structures are how the brain works. The hierarchical structure is how the physical world works (you can't put the same shirt in two closets), and we have an unfortunate habit of trying to force our brain to work the same way, but it's an impedance mismatch.

Unless I'm the only one that is frustrated that you never know where to find vegetable oil in the grocery store. Is it in the cooking aisle near the flour, or the condiments aisle near the vinegar? Seems like every store chooses differently since it doesn't make sense for them to put it in both places.

<comment><USER3> Totally agree - being able to not only list things from top-to-bottom but more visually seems to work far better for me as well (though I suspect people's brains may work differently?)

My love for outlining like in Workflowy or org-mode but my need for more visual-based tools like Scapple or mind-mapping is what led me to scratch my own itch and create Mindscope. It's an attempt to be the best of both worlds. Would love feedback, of course... [http://www.mindscopeapp.com](http://www.mindscopeapp.com)

<comment><USER4> I'm a little put off by ipad-only: I want to be able to at least read my data from anywhere. I don't want it gone for a week when my iPad gets run over by a car. I'd also like some non-video content on the website: when I visited the page just now (on Android) I see two videos and an app store link. I'm not going to watch a video on the bus right now so that leaves me with no info at all.

</comment></comment></comment><comment><USER5> What this story and many of the comments herein miss is that org-mode coupled with org-babel is a full-fledged multilanguage literate programming environment. When you have access to the shell, Python (w/ matplotlib for graphs), Clojure, R, etc. right in your org buffer, and can interact between them (and even pass data between cells of different languages), you really do have what Ken Iverson (inventor of APL, Turing award winner) called a "Tool for thought". This prose first style of programming where text is punctuated by code (instead of the other way around) is excellent for your own thought process, exposition (via Latex, MD, HTML, text export) as well as taking notes. The only downside to org is that it is intimately tied to emacs, so if you don't like emacs (lisp) you won't want to use org. And one more thing, the hierarchical folding in org is second to none. That should be a simple matter, but no other environment/editor handles that feature like org.

<comment><USER6> I agree, Babel is often overlooked subset of orgmode's features. The linked article that's spawning these comments doesn't do an especially good job of explaining why a developer would should want to use orgmode. Common problem, though, orgmode is far more than an outliner tool, a lot of what it does is truly mindblowing.

Orgmode has so many features, and there are so many ways to combine them, that it's really hard to get a grasp on everything it can do. It is certainly not just an outlining tool restricted to working with strict hierarchies. E.g., searches can be done within a file -- or throughout hundreds of files -- which will then assemble all responsive headings (i.e., all connected items) in the Agenda buffer (which is, in a sense, virtual, since it doesn't represent any file or document at all; it temporarily collects items from different files). Many org-mode users "live" in their Agenda buffer. The Agenda buffer isn't technically "graphical", but in many ways it's better and more powerful than a graphical solution because the relevant, connected items all then appear as items in a single buffer, no need to follow lines on a picture connecting sometimes far-away items in a complex, confusing graphical representation.

There's so much more it's hard to know even where to begin. For programmers, learning more about org-babel is definitely a good place to start.

<comment><USER7> I've been using org-mode in various capacities for a little over a year now. I've tried other tools but keep coming back. As far as complexity goes, I feel like I'm barely scratching the surface. I like what Neal Stephenson has to say about emacs (which applies just as much to org-mode):

 _In the GNU /Linux world there are two major text editing programs: the minimalist vi (known in some implementations as elvis) and the maximalist emacs. I use emacs, which might be thought of as a thermonuclear word processor. It was created by Richard Stallman; enough said. It is written in Lisp, which is the only computer language that is beautiful. It is colossal, and yet it only edits straight ASCII text files, which is to say, no fonts, no boldface, no underlining. In other words, the engineer-hours that, in the case of Microsoft Word, were devoted to features like mail merge, and the ability to embed feature-length motion pictures in corporate memoranda, were, in the case of emacs, focused with maniacal intensity on the deceptively simple- seeming problem of editing text. If you are a professional writer – i.e., if someone else is getting paid to worry about how your words are formatted and printed – emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish._ [1]

A few things for newbies that might help:

1\. A lot of org-mode 'power users' post their workflows and all of the attendant emacs lisp code [2] [3], and many new users feel like they have to customize their org-mode experience to that level to get any use out of it. DO NOT DO THIS! Start completely fresh with a clean install, just use it as a braindump outliner, and SLOWLY start adding new features as you go, based specifically on what you need for your individual workflow (the most useful first thing to learn for most people, after basic outline creation and folding, is probably the agenda view). This way you 'grow' the program to fit your own needs organically, rather than trying to shoehorn yourself into someone else's idea of a perfect workflow.

2\. One customization thing I will say you should do immediately is to change the theme to match your preferred UI style. It will make a huge difference in how you 'feel' while you're using it. I love emacs but I hate, hate, hate the default UI look-and-feel. I will plug leuven-theme [4] as my current go-to for org-mode, but also dig the sanityinc tomorrow themes [5].

I will also throw in a compliment to the awesome community around emacs. It's happened to me many times where I've encountered some shortcoming or 'missing' feature of my existing setup, thought to myself "if only I could do X and Y," and discovered after 5 minutes of Googling that someone has already written something that does exactly what I'm looking for...

[1] from 'In The Beginning Was The Command Line' (1999) [2] [http://pages.sachachua.com/.emacs.d/Sacha.html](http://pages.sachachua.com/.emacs.d/Sacha.html) [3] [http://doc.norang.ca/org-mode.html](http://doc.norang.ca/org-mode.html) [4] [https://github.com/fniessen/emacs-leuven- theme](https://github.com/fniessen/emacs-leuven-theme) [5] [https://github.com/purcell/color-theme-sanityinc- tomorrow](https://github.com/purcell/color-theme-sanityinc-tomorrow)

</comment></comment></comment><comment><USER8> I spent a few months on emacs, mostly so I could experience the magic of org. I didn't get it. It's a super powerful outliner with scripting... Through that experience I rediscovered pen and paper, actually. No scripting, but I can write sideways and sketch things. A pocket sized notebook was the answer for me.

<comment><USER9> > _I didn 't get it. It's a super powerful outliner with scripting..._

At its very heart, yes. And that alone is cool, I think (the scripting part).

But it's also a lot more: org-mode supports a simple form of task management (TODOs, Agenda views,...), it has a built-in spreadsheet editor (with formula support, all in ASCII), you can export contents to various backends (HTML, Beamer, ...) -- it really is a beast!

<comment><USER10> Pencil and paper is much better for me for making quick notes to be honest. I actually don't like writing my brain dumps on a computer because it makes it harder for me to think about them. I find that physically using a pencil helps me develop my ideas more because I have to reiterate what I'm writing while writing it. It's definitely a personal preference, maybe it comes from the fact that I always draw things on paper when designing them and always do working out for Physics and Maths problems on paper. When I go to write it in a file, it always feels more official and like a proper document than just scribbles.

<comment><USER11> The problems with paper notes are poor searchability, linking, extracting/copying of data, and portability.

But yes, there are advantages to paper, like the ability to easily draw diagrams and link ideas with arrows, etc.

On the other hand, if you need that, you could always use something like a Wacom tablet, or maybe some other touch-screen device with a stylus. That would give you the best of both worlds.

<comment><USER12> Wacom tablet/touch screen+stylus have same problem of poor searchability. (Assuming that you are suggesting "drawing" digitially, as opposed to on paper)

Are there tools that will let the user search "hand drawn" digital image ? One can always use tag like system, which one can't with paper, but then it is extra work, and adding "text" tags is easier when using something like org- mode, or just plain text.

<comment><USER11> I wasn't arguing that digital drawings wre searchable, but that typed text was.

Still, there are ways to make drawing somewhat searchable too.

The (typed) names of the drawings you make are searchable, as are the tags (if you've used any, and you should), and their location on your filesystem. If there's some writing on the same page as the drawing, that's potentially OCR'able, and then searchable. Finally, you could always combine drawings with typed text, wich will be searchable.

</comment></comment></comment></comment></comment></comment><comment><USER13> I'm pretty into org-mode. I got started from this article by Sacha Chua[1]. Her note taking style helped me learn faster. (This post was written in emacs.)

[1] - [http://sachachua.com/blog/2014/01/tips-learning-org-mode- ema...](http://sachachua.com/blog/2014/01/tips-learning-org-mode-emacs/)

</comment><comment><USER14> Do people here have opinions on Workflowy? [https://workflowy.com/](https://workflowy.com/)

As a Vim adherent, I never really got into Org-Mode, but from what I've seen from my Emacs friends, Workflowy seems kinda like Org-Mode Online, but with additional features like being able to share a sublist as a URL (which was noted in this blogpost as a weakness of Org-Mode: "The caveat here is that it's mostly a one man show.").

I use it very much like this blogpost describes, to quickly jot-down and organize thoughts, then later reorganize them, update them, or archive them.

<comment><USER15> Have you tried evil mode with vi bindings? The good thing of org-mode is that it runs locally and through ssh, but any task outliner tool is useful to organize thoughts or tasks.

<comment><USER16> evil mode is pretty good, but I find that there's a few rough edges. Also, I can't find a good type-ahead search plugin for picking files like in TextMate, Sublime Text, or (my current preferred tool) the Ctrl-P plugin for Vim [0].

[0] [https://github.com/ctrlpvim/ctrlp.vim](https://github.com/ctrlpvim/ctrlp.vim)

<comment><USER17> You didn't search hard enough ;) Really, Ctrl-P is joke to anything compared available in Emacs.

<comment><USER18> Can you provide some examples and/or the name of the packages etc. I've just started emacs and the way I use dired mode is too slow. In terminal I have a bunch of aliases for fast navigation. How do you do this in emacs?

<comment><USER19> You can have aliases in emacs as well - just use bookmarks. Set a bookmark with C-x r m and jump to a bookmark with C-x r b (I bound this to a "bj" keychord to invoke bookmark-jump faster). If you install ido/helm/ivy, you'll have a quick fuzzy selection mechanism to grab whatever bookmark you want with just a few letters.

Plus you'll want to install a fuzzy file finder like find-file-in-project.

</comment></comment></comment></comment></comment></comment><comment><USER20> I like this. Not because I use this process or even Emacs, but because it focuses on the center of the issue: Bringing your full mind to bear on the object at hand. If there's anything that will de-stress a frustrated hacker, it's that sort of directed, decisive action toward the best perceivable outcome.

Often you don't even have to save your notes file if you are just using this as a method to defeat procrastination or build up momentum for a busy day. Many of mine don't survive the day and that's fine.

</comment><comment><USER21> The biggest issue I had with org-mode was the sad state of mobile clients. They were all convoluted to set up and, once working, didn't work very well [1]. The experience was much worse that what I've become accustomed to with Todoist, Nirvana, etc. where mobile sync is pretty seamless.

Org certainly is interesting and ticks the main boxes for me: outliner/TODO system, open source, text file, etc. With a better mobile solution available, I could definitely see myself using org-mode as my primary organization system.

[1] To be fair, this was under Android. I've not rerun the experiment using iOS, but I'm seeing one MobileOrg app in the store, last updated in 2013, with the most recent comments citing issues similar to what I experienced.

<comment><USER22> [http://www.orgzly.com/](http://www.orgzly.com/) isn't quite there yet (no automated sync yet), but is a vast improvement over MobileOrg for Android

</comment></comment><comment><USER23> Others here have described really well the defects in most products for information managers, knowledge managers, note-takers, etc etc. I created OneModel ([http://onemodel.org](http://onemodel.org)), as an org-mode alternative. (Really, an everything-else alternative.) Free (AGPL), and contributors welcome. Especially feedback! It has many advantages over emacs org-mode (details in the FAQs, but e.g. the speed of navigation, ease of learning, and flexibility).

Vision, in buzzwords: outlines + mind mapping + evernote + wikipedia + knowledge management + _spreadsheets /apps_ \+ PIM, you decide what to share or import. It lets you organize arbitrary knowledge in a structure that makes sense to you, based on how you think. It is meant to be very easy to learn. It is (so far) text- and keyboard-only, since everything you need to know at any given time is on the screen. It is highly efficient to navigate.

For "what it is today" with details, & links to more about the future: [http://www.onemodel.org/1/e-9223372036854622523.html](http://www.onemodel.org/1/e-9223372036854622523.html)

</comment><comment><USER24> I finally got GTD implemented in OneNote. Now you're telling me I now need to move on to Emacs org mode?

God, it's like trying to choose a Javascript framework.

<comment><USER25> Emacs org-mode will be there long after OneNote is gone. And the format is all text. It's a life-long investment.

<comment><USER26> There are already (to me) very useful places where I can get OneNote where I can't get emacs -- Android and iOS. I don't expect to ever see Emacs on iOS, and I tried it on android but it doesn't work well at all.

Not sure why you think emacs org-mode will be around forever. While I'm sure emacs will be around forever, I've had vim (not emacs, I don't use it I will admit) extensions which rotted as new versions of vim came out.

<comment><USER27> Not Emacs but Org-mode.

There is [http://www.orgzly.com/](http://www.orgzly.com/) for Android. not sure about iOS.

</comment></comment></comment></comment><comment><USER28> So this boils down to take notes, add do/done flags for items. OSX' Notes app can do the same thing...

Not to downplay org mode's usefulness, but this isn't really a post about org mode, just some general note taking strategies.

</comment><comment><USER29> Surprised he did not mention org-capture for this use.

[http://orgmode.org/manual/Capture.html#Capture](http://orgmode.org/manual/Capture.html#Capture)

</comment><comment><USER30> This has also been my experience, journaling helps a lot both while working on something and when getting back to it, especially after a longer period of time.

I found this discussion interesting too: [https://news.ycombinator.com/item?id=9895713](https://news.ycombinator.com/item?id=9895713)

</comment><comment><USER31> You can use Github to use create org files. I have several repos of org files:

[https://github.com/melling/ErgonomicNotes](https://github.com/melling/ErgonomicNotes)

[https://github.com/melling/ComputerLanguages](https://github.com/melling/ComputerLanguages)

[https://github.com/melling/MathAndScienceNotes](https://github.com/melling/MathAndScienceNotes)

[https://github.com/melling/ios_topics](https://github.com/melling/ios_topics)

</comment><comment><USER32> Very happy org-mode user here. Two things that are worth mentioning:

\+ org-present, which lets you write presentations as org files

\+ Orgzly, which gives you a great interface to search, create and edit org- mode files on your Android device

</comment><comment><USER33> I kind of agree.

But I just use plain text files with bullets.

I haven't seen a compelling argument to justify learning all the concepts and keystrokes of org-mode. I don't need all the bell and whistles. Export to HTML? Why?

<comment><USER34> If you're already an emacs user (is it supported in other editors?) you can start here and grow as you need it. At least, that's how I've done it. Started with bulleted lists (folding was convenient and really all I made use of). Then expanded to linking within a document and to other documents. My .emacs file auto-loads an _index.org_ file for me, this has links to numerous other documents. Some are little more than scratchpads, one is a list of PDFs. Some of those have become links to org files that link to the pdf and I have notes/annotations in the org file. It's my own wiki.

Export to HTML was useful a couple times, but not something I've used much of. I generated some code samples and used org-babel mode. The HTML view was nice enough to share out to other people.

I'm still barely using any of its features. The compelling thing for me is that when I've wanted a new feature, it was already there 9 times out of 10.

</comment></comment><comment><USER35> A key point to this article is that the author does his development work in Emacs, so for him, taking notes doesn't require him to switch or launch a new application.

As a lowly Windows developer, I struggle to make use of any note taking application outside of a sheet of paper. I'm sure a tool like OrgMode, Zim, or OneNote would help me organize my life, but as soon as I try to do this, I simply ask myself, why not just simplify?

<comment><USER36> I use OneNote on a daily basis and really like it. Mostly just an easy way to write down text with simple markup. Tables work well and you can add checkboxes if you want.

OneNote's search is IMO it's killer feature. After you've built up a sizable amount of content you're going to start to need to search for stuff and it's pretty much instantaneous. Also returns results for pictures too (using OCR).

<comment><USER37> I use a Windows Phone which came with OneNote. It automatically syncs between my phone and my desktop. It's really nice when I'm out on the town and have an idea or something I want to jot down.

</comment></comment></comment><comment><USER38> I think the main takeaway here is not that org mode will make you more productive, but that taking notes will. I have tried many programs including org mode, and found that OneNote works best for me. It is stored in the cloud so always available, has native clients for mobile, and a web client. It does impose a bit of structure which some people may or may not like.

</comment><comment><USER39> I use my own wiki for everything I want to remember, and have used it as a GTD method. But in the end I moved away for GTD stuff. I used Chandler, and really liked it, but then it was abandoned. Then I used Quickfox Notes in Firefox to make a simple plaintext todo list. That works OK til now. Lately I've been using Evernote more and more, and now I mix them all more or less.

I've tried Emacs, tried the Eclipse todo, but neither caught on with me. I hear great things about Emacs and about Vim, and although I use Vim a lot to edit files on the server, I keep having difficulties changing to either of them for development. Maybe it's a matter of time.

<comment><USER40> I had a similar issue has well. I ended up in Onenote for years, and honestly I had no real issue. . . until my move to linux mint. Now I'm using raw text for the time being.

<comment><USER37> The webapp version of OneNote works pretty well. I use it on Linux with no troubles.

[https://www.onenote.com/hrd](https://www.onenote.com/hrd)

</comment></comment></comment><comment><USER41> I built a system to generate SVG burn down charts from Org Mode task lists stored in Git (for historical project data): [https://github.com/pjkundert/burndown](https://github.com/pjkundert/burndown)

It was somewhat useful, but requires regular updates of project status to be checked in; somethings I found challenging to remember to do.

</comment><comment><USER42> I use this exact process only without any special mode in emacs. I do not mark items complete I just remove them when they are no longer relevant.

When something important comes up it goes to the top and often when I am finished with it a lot of the stuff below it can be deleted too.

</comment><comment><USER43> This title really puts me off. I can't find a conceivable reason for anyone who actually uses Org Mode to write it as "Emac's Org Mode". Another reason to never go to this particular website I guess.

</comment><comment><USER44> Should be Emacs', not Emac's

</comment><comment><USER45> What is Emac?

<comment><USER46> It's a bit like Vi.

<comment><USER47> It's really not at all like vi.

<comment><USER46> It was a dumb pun on the last letter of "emacs" being left off. :P

</comment></comment></comment></comment><comment><USER48> > your software engineering

What does this mean?

</comment><comment><USER49> *Emacs's

</comment><comment><USER50> I doubt it</comment>


Why I think that JavaScript is the present, not necessarily the future - <AUTHOR> http://orcaman.blogspot.com/2014/09/javascript-is-present-not-future.html

<comment><USER2> Another point: a lot of developers have their favourite languages that happen to be not JS.

The so called "open web" proposes segregation via transpilation instead of enabling (some sort of) multilingual techniques and no major tech corporation is rushing to heavily invest into asm.js/Emscripten.

Let's just hope the whole thing goes down heavily and the future will hold a complete freedom of language choice both on mobile and web.</comment>


Facebook Releases Slingshot For Self-Destructing Selfies - <AUTHOR> http://bits.blogs.nytimes.com/2014/06/17/facebook-releases-slingshot-for-self-destructing-selfies/ <comment><USER2> Haven't we already seen this movie with Facebook Poke? We saw how that ended...</comment>


Some Georgia Schools Make Mandarin Mandatory - <AUTHOR> http://www.npr.org/2012/09/08/160028396/looking-to-future-ga-schools-require-mandarin

<comment><USER2> I took some Mandarin in college, my younger brother is a linguist, and my _much_ younger 8 year old sister has been in a Spanish immersion program since she was 5 (in a Georgia public school). I completely support more language education in public schools.

However, this superintendent really seems stuck on this "China as the future of the world" idea. It seems a bit short sighted to base policies solely on extrapolated trends.

If this were 1995, he'd be insisting that student's learn Japanese or they'd be suffering in a future economy dominated by Japan.

From personal experience, the majority of students just aren't going to get as much use from Mandarin as they would from Spanish. Furthermore, Mandarin is _much_ harder for native English speakers to learn than Spanish--It takes much more instruction and practice to get to an equivalent level of competence.

<comment><USER3> I agree 100%. I've had lots of foreign language learning experience. I love studying languages and I think that kids should have as much opportunity to do so as possible.

I have strong doubts that Chinese will ever become the lingua franca of business. It has language features that make it difficult for us Westerners to learn (mainly, tones that carry semantic meaning)... I think that Chinese people will be more motivated to learn English instead.

Also, who's to say China's economy won't crash and burn in the next 50 years? Forcing Mandarin on everyone is putting all your eggs in one basket. Learning a foreign language is a difficult thing, and one good way to keep motivated is to be truly interested in the culture of the country whose language you're studying. I'm all for mandatory foreign language education, but I think people should be able to choose a language they care about. They shouldn't have to take Chinese because it _might_ be a big deal in the future. Learning any foreign language can open doors, not just Chinese. Take it from me, an American living in Japan.

<comment><USER4> I don't think linguistic features are very relevant. Historically, languages have become lingua franca primarily due to political and economical factors, and secondarily cultural factors. E.g. people living in the Soviet republics and communist Eastern Europe had to learn Russian, no matter how hard Russian was for them. Nowadays people all over the world learn English; for many of them, English is as hard as Chinese is to a native English speaker.

But I agree that it's not a given that China will be _the_ superpower, and even if gets there, it's not clear that Mandarin will immediately become that important.

<comment><USER5> I think China's ascendancy is a foregone conclusion, but not the dominance of Mandarin.

<comment><USER6> I think the easy part of China's ascendency has just about finished, a lot of very hard economic, political and demographic problems are about to kick in, I wouldn't presume that their continued meteoric rise is guaranteed.

</comment></comment></comment></comment></comment><comment><USER7> Not sure about the logic of this: "They will live in a world where China and India will have 50 percent of the world GDP. They will live in a world where, if they cannot function successfully in the Asian culture, they will pay a heavy price."

Today, the US + EU have about 50% of the world's GDP. Do Chinese kids pay a 'heavy price' because they cannot function successfully in the Western culture? It seems more like the heavy price is paid due to lack of economic integrity and opportunity in China. The importance is in getting a solid education. There will be plenty of work to do here in the US and in China.

Related topic: The Hong Kong Chinese don't want their kids to learn about about China: [http://news.yahoo.com/hk-drops-china-education-plans-mass- pr...](http://news.yahoo.com/hk-drops-china-education-plans-mass- protests-143452268.html)

<comment><USER8> For what it's worth, English is a mandatory subject for students in China. It's hard to predict what the political and economic climate will be like a few decades from now, but I'm pretty sure the number of Mandarin speakers will increase and Asia will still be a major influence on global economics.

I'm not sure if I agree with this decision given the circumstances of this particular school district, but I won't be surprised if we start to see other schools strongly encouraging Mandarin studies.

Let's not jump too quickly to politics. Mandarin is a language, and will be spoken by the Chinese regardless of politics. It is also spoken in many places outside of mainland China.

<comment><USER9> > English is a mandatory subject for students in China

Few of them learn it well enough using their rote methods to be of much use though. It's good to learn english as it is currently the lingua franca of the world. In europe German teens talk to their Swedish friends in English, just as Italians talk to the Croatians in English. It's used universally for communication.

I wonder though - are all English classes in China taught by american government representatives whose salaries are paid for by the United States? Do they also introduce American values as part of the classes?

I noticed the article said the classes, throughout the future, will be free to the schools because the Chinese Government (which is as we know run by the Communist Party) is paying for them and the teachers are being sent from mainland China.

Nothing seems odd about that to you?

I know, I know. I must be some "conspiracy nut" just to be asking whether the Chinese Communist Party completely financing and sending trained and educated Chinese Communist Party members to the US to teach poor american children to speak Chinese and understand modern Chinese perspectives defined by their government in order to "prepare for 2050" is a strange thing. It's safe to disregard these "crackpot ideas", right? Or is it.

<comment><USER10> > Nothing seems odd about that to you?

No. Many governments have or have had programs to spread understanding of their language, including paying for teachers at times, as well as paying for radio stations, TV channels, web sites.

Some of these are or have been blocked by various countries at various times because they didn't like the political views espoused, sure, so it's not like one should assume that there are never political motives (and that goes for all "sides" - the US has done this as much as everyone else).

But it is also important for commerce, diplomacy etc. to ensure a good supply of people with an understanding of language, and "seeding" interest for later language studies by introducing it earlier is a good solution.

> I know, I know. I must be some "conspiracy nut" just to be asking whether > the Chinese Communist Party completely financing and sending trained and > educated Chinese Communist Party members to the US to teach poor american > children to speak Chinese and understand modern Chinese perspectives defined > by their government in order to "prepare for 2050" is a strange thing. It's > safe to disregard these "crackpot ideas", right? Or is it.

Do you for a second believe that the curriculum won't be read by someone in these schools prior to use? Someone who is pretty much guaranteed to hold viewpoints sufficiently far from any devout supporter of the Chinese regime to react quickly to blatant misrepresentations?

It's not like these teachers will be let free on a class with no follow up. I very much doubt the Chinese regime is interested in risking their promotion of Chinese language and culture by adding controversial political content. Not least because ideology has long been a secondary priority for the Chinese leadership after economic growth.

What do they care if American school children agree with their policies? What they do care about is that American school children grow up to be useful when Chinese companies want to do business with American companies and need people who understand both languages and cultures.

</comment></comment></comment></comment><comment><USER11> I started taking Mandarin in college ten years ago. I have lived in Taiwan for six years, and I now speak and read near-native Chinese, an accomplishment I'm somewhat proud of.

Now I am teaching myself programming to prepare for a career when I return to the US.

Take from my anecdote what you will.

</comment><comment><USER12> Wow, my old hometown makes HN. Both of my parents have taught public school in Bibb County, so I've followed this with some interest. You can read the entire "Macon Miracle' plan at <http://bibb.k12.ga.us/stplan2.html>

</comment><comment><USER13> On a side note, Macon is actually a Code for America city this year (<http://codeforamerica.org/2012-partners/macon/>) and I'm one of three fellows working with the city. The speech superintendent Dallemand gave earlier this year detailing his plan was great (we spent all of February in Macon) — especially when you consider just how much scrutiny it's been under.

</comment><comment><USER14> My experience learning languages in high school left me feeling that its a waste of time to learn a language for an hour a day.

Its much better to be immersed in a language for a month than spend three years learning it that way. And it takes less time altogether.

</comment><comment><USER15> I think there's a huge cultural education gap in the US regarding China. Requiring Mandarin at a basic level would help mitigate this while opening opportunities for students.

People should get their heads out of the sand..

</comment><comment><USER16> Requiring a tonal language for young children is a great thing–typically adults that speak only non-tonal languages have a much, much harder time learning the tonal structures. I put this in the same category as teaching music to younger children (higher plasticity)

Besides, isnt this the first step to the Mandarin-English pidgin language spoken in Firefly? ;)

</comment><comment><USER17> It doesn't even really matter if China will become a superpower bigger than the US - since most of the production of physical products is there, it makes a lot of sense to teach children the language - it will make it so much easier to work in the future. I also still think that somewhat advanced economy classes in schools would be a great addition...</comment>


Hg Init: a Mercurial tutorial by Joel Spolsky - <AUTHOR> http://hginit.com/

<comment><USER2> If this is advertising, I want more of it. As an SVN curmudgeon, the first part of this tutorial finally persuaded me that I really, really need to give distributed version control a fair trial. Joel pretty much nailed all my objections/complaints/whines about switching. But I also know the pain of merging all too well - a benefit that I hadn't really seen explained as persuasively before.

<comment><USER3> This I don't get. The branching/merging thing seems to be overblown to me.

The reason I'm switching is because I like the tools better, and you can be up and running with a repo in about 5 seconds. I think that's argument enough. There's less pain.

But what is so different about merging in hg/git that merging a complex change from a branch is somehow made magically trivial? I mean, the tools for handling changes might be better because they are more modern, but the whole "changeset" thing seems to be hyperbole -- _all_ (well, any good one) VCS's track changesets, that's what those revision numbers (or collectison of rev numbers) mean. :-)

<comment><USER4> The difference is that SVN is dumb on a profound level when it comes to diffing. It knows how to diff one file vs. another, and that works great for incremental changes all in one branch, but it doesn't keep track of revision and merge history the way more modern tools like perforce, TFS, and especially git and mercurial do.

The end result is that when you have two branches that have become even a little out of sync with each other when you try to merge them together SVN doesn't know what to do because all it can do is diff one version against the other. Imagine how this looks if you've spent a bunch of time refactoring in one branch, moving code around, deleting code, adding new code, etc. The end result is that you basically have to hand-edit each file into the final merge state you need it to be in, entirely defeating the very reason you use source control tooling in the first place. You might as well just print out all the code from each branch and get a committee to merge it all together using scissors and craft glue, it wouldn't take any longer or be any more onerous than it would be using SVN.

In contrast, more sophisticated VCSes, including hg, keep track of changesets, and they are capable of tracking those changesets as they move through different branches. When you merge in Mercurial it's able to trace through the revision history of a file in the source and target branches, find the common revision, then separately apply the diffs from the source and target branches, automatically check for conflicts (e.g. changes from both sides that touch the same blocks of code) and create a sanely merged final result which will only be flagged as a merge conflict requiring manual intervention when there's a high probability that there actually is a merge conflict. More so, the merge conflict will be presented in such a way that it's actually sensible, showing the actual conflicting changes and the resulting conflicting final versions of the file, making it fairly straightforward to resolve even in that case.

Casting this in the form of a real world example, consider a "main" branch with two dev. teams each working in their own child branches. For the most part each dev. team works on their own code within their own set of files, separate from the other team's, but there is some common code which both teams have a tendency to contribute to or change. Team A spends a bunch of time making changes in their own branch (branch A), committing as they go, then merges these changes up to main. Later team B merges their changes to main as well. Instead of running into a merge conflict nightmare that requires huge amounts of developer time be expended in sorting out the state of each and every file, the version control system sees that team B hasn't made any changes to most of the files in the repository, and most of the changes team B has made are to files that haven't been changed by anyone else, and there are only a tiny number of changes to files that had also been changed by team A's recent commits, which hadn't been merged to team B's branch before team A pushed their code up to main. However, most of those edits are to distinctly different parts of the shared files, and are automatically merged without human intervention, only a tiny handful of merges require manual intervention, a process that takes only a tiny number of people a few minutes to sort out. Some of those automated merges may, in theory, not be safe, but that is what testing is for, and the devs can still review and sanity check the merged files before committing if they like.

The ability to turn a show-stopping ordeal into a routine task can be utterly transformative to the development process. There are many big dev. shops that are reliant on dozens or perhaps hundreds of big merges (in multi-thousand file code bases) shuffling around code between various branches every day.

<comment><USER5> _When you merge in Mercurial it's able to trace through the revision history of a file in the source and target branches, find the common revision, then separately apply the diffs from the source and target branches..._

Originally subversion couldn't do this, but it has had merge tracking since version 1.5 (a couple of years already). You can now merge one branch into another multiple times without specifying explicitly which revisions to compare.

I have seen a number of people saying that the merge tracking in subversion still isn't as good as what's in git or mercurial, but I haven't found an explanation of the difference. Can someone elaborate, or point me to some good reading?

lallysingh and nollidge point out that in a DVCS model you tend to make more frequent commits, because committing and publishing are no longer the same action, and that having finer-grained commits makes automatic merging more likely to succeed. This seems quite plausible to me, but it's orthogonal to the problem of merge tracking (isn't it?).

</comment></comment></comment></comment><comment><USER6> Now that's what I call organic SEO effort for their product Klin. I think patio11 will approve! :)

EDIT: The above comment may seem negative but that's not the intention. As much as this site will help their SEO effort, I think the guide itself is awesome. I am a git user and when I was learning git, I went through similar 'examples' to understand git. I think this is the best way to learn git or hg!

EDIT: I wanted to mimic the guide for git at gitinit.com and someone has already registered it!

<comment><USER7> I have this funny feeling that Joel Spolsky probably does not need to read my blog for advice on effective software marketing. But yes, I approve. Do stuff like this. It works, it is inexpensive, it lasts forever, and your customers will love you for it.

(Though if you're doing it for narrow SEO reasons, I might consider not breaking it into its own domain. Links pointing at it won't help the product rank if the product is on a domain different than the linkbait.)

</comment></comment><comment><USER8> Proof that Joel still has something to offer developers besides "if you were any good you'd be on StackOverflow right now". <g>

As it happens I started moving to Mercurial _yesterday_ , how is that for luck. I think the Hg site documentation is fine, but I have to say, Joel's is more fun right out the gate. May much Google juice flow his way.

</comment><comment><USER9> I always enjoy reading Joel's writing, regardless of whether I happen to agree with whatever he's saying. He can take on a subject as dry as comparing two version control systems, and make it enjoyable to read. Especially when he's working without an editor (his inc. stuff reads like it has been edited out of all recognizable shape.)

Compare it to the normal dry, unreadable technical writing on similar subjects and it's just night and day.

</comment><comment><USER10> For those of you comparing git and hg, I would suggest that they are actually quite similar. Check out this article "Mercurial for Git Users" here:

<http://mercurial.selenic.com/wiki/GitConcepts>

It answered many of my questions on the nuances of Mercurial. The branch model, bare repositories, and command equivalence table were especially helpful for someone like myself who has used both systems but never fully understood the distinctions.

</comment><comment><USER11> I like that Joel decides to say "OK, forget about Subversion or whatever you know about source control in general. I'm going to teach you about the DVCS way from the ground up." It's great that he treats this guide like an introduction to the concept of version control, but I think you really need experience with VCS before you can understand Hg Init.

Is there an easy way to educate older and/or less technical IT professionals about source control? I haven't been able to do it myself, and I wish this was it.

<comment><USER12> This looks good from an overall why you should learn it point of view and also to help you with the lingo that you should know:

[http://betterexplained.com/articles/a-visual-guide-to- versio...](http://betterexplained.com/articles/a-visual-guide-to-version- control/)

For IT people you should have your /etc/* files under revision control to track any changes and easily roll back changes that break your system. I actually think there are some tools that are specifically for this purpose and not the general purpose SVN/git/hg variety but I cannot think of them off the top of my head.

<comment><USER13> You're probably thinking of etckeeper: <http://joey.kitenet.net/code/etckeeper/>

</comment></comment></comment><comment><USER14> Nice use of Balsamiq Markups in the diagrams, by the way.

</comment><comment><USER15> That was great. What does Kiln get you that Mercurial doesn't?

<comment><USER16> Kiln gets you a pretty cool (if I do say so myself) code review system, an all-new web interface for managing your code and repositories, tight integration with FogBugz, and support from Fog Creek. If you don't need those things, then by all means, use the open source version.

There's a free trial of the hosted version that you can sign up for at <http://www.kilnhg.com/>. Also, Kiln and FogBugz are both free for Students and Startups (2 users or less). Give it a shot and let us know what you think.

<comment><USER17> As a kiln user, I'll back up Jason's statements here. Working with it day-to- day, it's not really any different from using the open source version of hg, but the web UI and code reviews are pretty damn cool.

</comment></comment></comment><comment><USER18> Would any of this transfer to understanding how git works as well? Alternatively, is there a similar introduction to git? I'm in the camp of someone who has used CVS and Subversion a lot and have had "learn Git" or some other distributed VCS on my to do list for a while now.

<comment><USER19> Scott Chacon has a couple excellent resources: <http://progit.org/book/> and <http://whygitisbetterthanx.com/>

<comment><USER20> <http://whygitisbetterthanx.com/> doesn't represent mercurial 100 percent accurately.

Cheap local branching: mercurial has had this since day one, and for a long time has had most of the capabilities mentioned in this section for a while. Unfortunately, it hasn't had good named branching support, so most mercurial users preferred to branch through cloning, but that was never necessary. Right now you can use bookmarks for temporary named branches but there's no built-in support for sharing them. You have to write your own extensions to copy bookmarks files around automatically or just do it manually. Mercurial really needs to deal with this, I think. It's the only feature I've seen in git that I wish mercurial had.

Staging area: mercurial has mq, which is far more powerful than a staging area. In all honesty, I only use mq as a staging area and ignore it's other features most of the time, and using mq only as a staging area is just as easy as using git's staging area. Also, not having a staging area forced on the user by default makes mercurial much easier to pick up than git initially, and later on if a user wants the same functionality he or she can get it.

github: Mercurial has bitbucket. Github is far more popular, but not necessarily technically superior as far as I know.

That puts mercurial almost entirely on par with git in terms of this web site's criteria.

edit: reading more carefully, <http://whygitisbetterthanx.com/> doesn't actually claim mercurial doesn't have the features mentioned above. It does just claim that git does things better. They say their local branching is better(it is) and github's social atmosphere is better than competing products(it is). However, with mq and the record extension you can do the same things as with the staging area.

<comment><USER21> Since we're discussing this, is there any equivalent to git rebase --interactive?

Coming from darcs to git (I add -p more or less exclusively), I didn't think I'd use rebase much but commit reordering/squashing has turned out to be very useful the few times I've wanted it. I know it's doable with mq, but you have to know to mq everything before the fact rather than after.

<comment><USER22> That'd be the histedit extension, I believe.

</comment></comment></comment></comment></comment><comment><USER23> Did someone also notice Kiln has a Dodo as logo? That bird went extinct in the late 17-th century (<http://en.wikipedia.org/wiki/Dodo>). I wonder what the meaning of this is. Maybe a pun on 'the way of the dodo', a place where your source code certainly _won't_ go, if you use Mercurial.

<comment><USER24> We were looking for a good mascot for Kiln, but unfortunately, all of the animals that we consulted were already in exclusive contracts with other products except for _Strigiphilus garylarsoni_ and the inverted flame-weasel, neither of which we felt represented our product well.

Late one night in the Kiln alpha period, though, I was hacking around the Mercurial integration, messed up, and suddenly realized that issuing "hg up" held the repository at its current version, but moved time itself to match the requested revision. In other words, I had unintentionally made a time machine out of Mercurial. After riding a dinosaur for awhile, it hit me that I suddenly had a chance to get Kiln a legitimate mascot.

I thought for awhile about where and when to go, then promptly "hg up"d to the mid 1600s. I went to the island of Mauritius, and approached the dodo bird. I explained that, through no fault of the poor bird, it was about to go extinct. But I had an option: I could "hg revert" the thing back into the present, restoring it from extinction, if only it'd be willing to sign an exclusive marketing contract for Kiln. We negotiated a little bit back and forth, but at the end of the day, as you can see, the dodo happily agreed. It now lives a life of luxury, and has even taken up recently to hanging around kiwi birds an awful lot.

Unfortunately, the current version of Kiln can only restore deleted files, not deleted species, but we still think the dodo--a peaceful bird with no natural enemies, restored to the present--makes a nice mascot.

</comment></comment><comment><USER25> Not having used Hg much at all (just a few hg commits and an hg clone), could it be used on top of a non-distributed source control system like SVN?

E.g., take advantage of hg commit and related commands to try changes out on the local repository, and use svn to commit those changes to the central repository?

<comment><USER26> You shouldn't have much problem with that. You'd just have to make svn ignore the .hg folder in your local repository, and you can use hg locally for whatever you want, and when you're at a point that you want to push your changes to your svn central repository, you can.

</comment></comment><comment><USER27> OK I just finished the first block (Subversion Reeducation) and one of the main points he makes is _In Mercurial, every developer has their own repository, living on their desktop_

But if you read the subversion book, or any other good tutorials, you know that developers using svn can just as well make their own private branches

So under branches/ I can have bob/ sue/ alice/ and they can have copies of trunk (or other branches) to their hearts content.

So why is this a big "win" for Mercurial?

(Will read the other sections later, no time now)

<comment><USER28> It's a win for DVCS in general, not just Hg. A couple of use cases off the top of my head:

* I can take my repository on the train/bus/wherever and still commit.

* If I'm working with someone who needs to use my 'buggy' code I can push just to their repository (or they can pull from mine).

* I can have my own workflow and create as many branches, checkouts, etc. as I need.

Of course, the example that he gives there is bizarre - effectively the Hg equivalent of hanging onto your code for 6 weeks and then merging all at once...

<comment><USER29> 2 and 3 are easily done in SVN also. 2 is basically merging your changes in personal branch to the personal branch of another user. 3. Well your branch in SVN is your domain, do what you want.

I think the main advantage is really for larger groups. Having 3000 branches in the linux repo would be unmanageable. Also, private branches are something SVN can't do to my knowledge. If I want to hack on a git repo without anyone knowing, it's easy.

But there's many advantages to GIT/Mercurial over SVN/* aside from the "everyone has a repo". I love git but currently use SVN due to legacy and keyword expansion at work and it's not that bad.

</comment></comment></comment><comment><USER30> I've just finished the introduction part and there is one thing he got wrong. the changesets vs revisions thing. Changesets and revisions are completely equivalent as far as merging is concerned (and almost anything else) because one is trivially computed from the other. and git which has even better merging support tracks file contents not diffs, which is another proof that this argument is irrelevant.

<comment><USER31> If you speak of Mercurial's changesets and revisions, they are clearly not trivially computed from one another, being that a revision is clone-specific, and a changeset is a hash computed on a single file by looking at all it's ancestors' states. REPO1 and REPO2 can both have 5 revisions and only one is common to both — a merge is possible, but the changesets considered will be _very_ different.

If you're comparing SVN's revisions with Hg's changesets, still no dice, for the same reason: changesets are unique for a file, given that file's history, and the hash trail allows for a clear way to figure out where changes happened, and merge from that point. A SVN revision just tells you how many commits have happened up to that point.

</comment></comment><comment><USER32> I'm generally not a big fan of Spolsky's writing. He tends to read too much like a sales person, and too little like an engineer for me to enjoy his writing.

This is a great read though, even if you already switched to git, because the two are so similar.

</comment><comment><USER33> Although I wouldn't be using mercurial myself, I gave this a point simply because of the great site design and layout.

</comment><comment><USER34> I still can't get HG to build with MacPorts/SnowLeopard ... seems to be a problem with Python.

<comment><USER35> Have you tried the binary installer? <http://mercurial.selenic.com/downloads/>

If you're intent on building from source, make sure you're running "sudo python setup.py install; sudo make install-doc". Installing with the makefile directly will place packages in /usr/local, where Python doesn't normally live under OS X.

<comment><USER36> Or if you're serious about installing Python packages, you already have a .pydistutils.cfg file specifying where you want things to install. Learning a few options to put in that file is a lifesaver.

</comment></comment></comment><comment><USER26> Great writing Joel. Thanks.

</comment><comment><USER37> I find the choice of characters and the paragraph descriptions of them a little strange. I get the point that it helps the story to make up a whole life story for each member of the hypothetical development team. What I don't understand is why each team member is portrayed in such a negative light. Are your co-workers that bad?

</comment><comment><USER38> Note that the only reason Spolsky is doing this is because he bet on Mercurial a few years ago for his project <http://www.fogcreek.com/Kiln/> which is Mercurial only. Unfortunately for him, git got more popular than hg so now he's promoting hg as much as possible.

<comment><USER39> Or maybe they don't want to risk a program that isn't 100% Windows compatible, because lots of their potential customers use Windows.

<comment><USER40> As a hardcore UNIX/git user, I've found the Windows git tools to be more than adequate.

<comment><USER41> If only Windows users were hardcore UNIX users...everything would be so much easier. No GUI code, no leaking GDI objects, no Java Swing, no WxWidgets, no cross-browser bugs (curl would be the only browser), no DPI scaling issues, no DLL hell, and no IE. Just text. Beautiful, green text. And it would all be BSD licensed.

Oh, what a wonderful world that would be...</comment></comment></comment></comment>


Ethereum Now Has Its Own Self-Sustaining Pyramid Scheme - <AUTHOR> https://themerkle.com/ethereum-now-has-its-own-self-sustaining-pyramid-scheme/ <comment><USER2> At least this is an honest use for Ethereum.</comment>


Startup mentors - <AUTHOR>

I am working with two other people on a website. Despite our hectic jobs, we managed to a launch a preliminary version of our site a few days ago. You can check it out at www.pollbag.com.
We did not know anything about web-programming a few months ago but we taught ourselves through guide books and helpful resources on the web. However, we realize there is still a lot to know and the problem is, we don't really know what we don't know.
It would be really helpful if we could find someone who can review our code and comment on it from a design perspective, and advise us on managing the development process more effectively. Does anyone know of any mentor networks that provide this kind of advice? Or any informal networks that help developers out etc? <comment><USER2> For determining the quality of your UI, you need to first determine who you want your primary user base is going to be. Once you have determined that, seek people out who fit into that demographic and then show them your design, because ultimately they're the ones who have to like it.

</comment><comment><USER3> I would seek other web developers at any number of public forums like OReilly Ignite, BarCamp, DevHouse, etc.

For informal UI testing, you can even go to any coffee shop, show people your work, and ask them what they think. Often you can benefit by seeing a virgin user who didn't understand that action X lead to result Y.

You could also quantitatively test your choices by pushing a different UI on some small percentage of users, and see how it affects performance or things like signing up active users.

Certainly rely on your peers, but the best mentor is need. Solving a problem teaches so much.

<comment><AUTHOR> Thanks for the reply. I'll check out those public forums as well. But the idea of testing the UI out informally is also pretty good.

</comment></comment><comment><USER4> "Or any informal networks that help developers out etc?"

news.YC might be a good place to look at.

Something more serious: Have you thought about what you can offer a potential mentor in return for guiding you? This does not have to be a tangible thing like equity - perhaps just giving them a good conscience might be enough. But in my humble opinion you can only profit from finding an answer to that question.

</comment><comment><USER5> Try Yahoo groups too. Though I don't know if you want to protect your IP at all, through an NDA or something analogous and that might pose a problem.

I work mostly in embedded world but I do some web development on my own. If you want, I can look over what you're doing, give you my thoughts and point to some tools. My email is mishamanulis at gmail dot com.

</comment><comment><USER6> I'm in the same boat. It would be great to have someone who would be available for the occasional question, to look at the business plan, etc. Is there are place where a startup could match up with a mentor?

</comment><comment><USER7> Try open source projects or joinging an existing company.

<comment><USER4> Sorry, I was going to down-vone this in a knee-jerk reaction. But I found that I was not hubristic enough to dismiss joining an existing company outright. Any way you'd better select your new host carefully.</comment></comment>


How does a business, or an idea, get traction? - <AUTHOR> http://www.start-up.co.nz/niceniche/

<comment><USER2> Isn't that the holy grail of business?</comment>


Smashing the stack for fun & profit. - <AUTHOR> http://www.phrack.org/issues.html?issue=49&id=14&mode=txt <comment><USER2> It's interesting to compare exploit tech from today to how simple things were back in '97. In '97, a complex exploit meant you couldn't have lowercase ASCII equivalents in your shellcode. Now, you scan the target for info leaks that will disclose stack cookies, and spray the heap to increase the odds that you'll hit your exploit in randomized memory, and forge stack frames that will return to mprotect or VirtualProtect, and and and.

So much of "security research" over the last 10 years has basically danced around a fundamental fact: if you lose control of the runtime memory of your program, you lose control of the whole program.

<comment><USER3> If you get lucky, your target won't bother with all these new-fangled protections and run on WinXP (no ASLR) and the only thing you'll have to contend with is non-executable stack. Our original exploit for Green Dam used a heap spray only to make writing it easier, and the underground exploit uses a really awful behavior of IE w.r.t. running .NET DLLs -- <http://www.milw0rm.com/exploits/8938> . Other than that, there are no defenses to speak of.

<comment><USER2> Even that really awful behavior of IE, that's a Black Hat '09 talk, isn't it?

<comment><USER3> Black Hat talks are not necessarily "new". Black Hat is not an academic security conference. The exploit was released months before BH09.

</comment></comment></comment></comment><comment><USER4> A classic. The most referenced underground paper, ever!

 _112,605 documents found_

[http://citeseerx.ist.psu.edu/search?q=Smashing+The+Stack+For...](http://citeseerx.ist.psu.edu/search?q=Smashing+The+Stack+For+Fun+And+Profit&submit=Search&sort=rel&ic=1)

</comment><comment><USER5> Ah, fond memories of my computer security class, where this was assigned reading. We also studied format string vulnerabilities: <http://julianor.tripod.com/bc/formatstring-1.2.pdf>

<comment><USER6> If we are going down memory lane, check out JP's "Advanced Doug lea's malloc exploits" [http://www.phrack.org/issues.html?issue=61&id=6#article](http://www.phrack.org/issues.html?issue=61&id=6#article)

<comment><USER7> And you might as well read Doug Leas's paper, too <http://g.oswego.edu/dl/html/malloc.html>

</comment></comment></comment><comment><USER8> In one of my freshman CS courses, one of our last assignments was to read this paper (as well as a more approachable tutorial written by our TAs) and carry this out on a toy architecture (LC3) that we had been working with for the whole course. It was probably the most interesting assignment we had that semester.

<comment><USER9> I had a similar class. CS2110 at Georgia Tech. I will never forget it :)

<comment><USER8> Funny, I was referring to the same class!

When did you take it?

<comment><USER9> Just last year. Taught by the fantastic Bill Lehey.

<comment><USER8> Really? Fall or Spring? We might have been in the same class!

<comment><USER9> Spring 2009.

</comment></comment></comment></comment></comment></comment><comment><USER10> Funny how the first example contains a subtle bug, the string termination is never done, if the stack wasn't zeroed prior to running that program, you may not only overflow 'buffer' on purpose, you may overflow it a lot further than you'd think by just reading the code.

large_string[255] = 0;

Would solve that.

</comment><comment><USER11> I remember reading this paper as an undergrad at Rutgers. We had to do a stack smashing project based on this with different stack protection methods (canaries/ASLR)

This was probably one of the most important things I learned in school.

</comment><comment><USER12> I remember reading this and finding an error in one of the examples. In addition to learning about the stack, I also realized that superheroes are human, too. <3

</comment><comment><USER13> Funny, I just re-read that paper yesterday =) Aleph One is a hero in my eyes, he made my childhood much more interesting.

</comment><comment><USER14> For a lot of these tutorials to work, you also have to turn off SELinux or any other stack protection.

<comment><USER15> This paper was written 7 years before SELinux was merged.

<comment><USER14> Yes. And the examples won't always work on modern linux distros depending on configuration

<comment><USER15> Well, I would hope so that exploiting techniques written 13 years ago won't always work on modern distros.

<comment><USER10> Your hope is unfortunately misplaced, the 'always' is the operative word.

Probably we will never see the end of this kind of attack until we switch to some radically different architecture.

<comment><USER16> "Managed code."

<comment><USER10> That's limited to the microsoft platform for now isn't it ?

Or does the term also apply to java ?

One of the things that I've been wondering about, that maybe you can answer is this: If languages such as javascript, lisp, python and so on (as opposed to say C) treat functions as first class citizens, doesn't that open up a completely new can of worms with respect to security ?

<comment><USER2> A strange question. Almost every language we use today is "managed", by the Microsoft definition; "Managed C++" is a Microsoft term for bare-metal C++ with extra runtime protections. Of course Java is "managed".

<comment><USER16> Yes, "managed C++" is very poorly managed. You can still do things like:

       char foo[42];
       foo[-4] = 0xcafebabe;

and watch your program crash and burn. (Sometimes, though, you get an exception you can catch with try{}/catch{}, instead of an actual segv. It would be hilarious... if only the app I was working on did not use this behavior as part of its string-parsing routine...)

<comment><USER2> Managed C++ isn't really designed to bulletproof C++; it's designed to make it possible to field C++ code without allowing attackers to upload their own programs into your program's memory.

Kicking Managed C++ for not being C# is a bit of a cheap shot.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER17> And the lesson is, try to avoid using C :)

<comment><USER2> And C++.

</comment></comment><comment><USER18> wow I still remember this. a classic by Aleph One.

Another tutorial pre-dates this by ~1 year. It was written by mudge.

<http://biblio.l0t3k.net/b0f/en/howto_write_buffer.txt>

<comment><USER2> The first published x86 shellcode-style overflow was splitvt, which was announced "officially" just weeks after this tutorial was dated:

<http://seclists.org/bugtraq/1995/Dec/2>

(My business partner co-authored it).

The first shellcode-style buffer overflow (besides the rtm worm) was Thomas Lopatic's HPUX HTTPd vulnerability from a few months earlier:

<http://seclists.org/bugtraq/1995/Feb/109>

There was a frantic race to get the first overflow out after 8lgm capped off their run of zero-days with an announcement of a Sendmail 8.6.12 remote that relied on a syslog() overflow (yes, in 1995, syslog(3) had an overflow). I was sitting next to Pieter when he wrote part of the tutorial you linked to. I was pretty young (maybe 19?) but even so, it was a pretty electric time to be involved in security.

</comment></comment><comment><USER19> Oh, that romantic feeling from the boyhood... =)</comment>


Andreessen Horowitz Investing In Red-Hot Pinterest
 - <AUTHOR> http://www.businessinsider.com/pinterest-andreessen-horowitz-2011-10

<comment><AUTHOR> $200mm Valuation for Pinterest? Not justifiable in ANY way.

<comment><USER2> The investors couldn't care less. It's about finding the next cash cow then doing the usual pump and dump.

<comment><AUTHOR> This is just sad. The next wave of entrepreneurs aren't being exposed to logical business decisions.</comment></comment></comment>


NY Fed to pump $75 bn into money markets daily through Oct 10 - <AUTHOR> https://news.yahoo.com/ny-fed-pump-75-bn-money-markets-daily-154943871.html <comment><USER2> Dupe (as in similar stories and discussion have already been taking place).

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

And

[https://news.ycombinator.com/item?id=21004068](https://news.ycombinator.com/item?id=21004068)</comment>


Ask HN: How do you deal with "Hey you know tech, fix my xyz" - <AUTHOR> <comment><USER2> Quote them using your hourly rate.

</comment><comment><USER3> "Sure I can do that, and here's how much it'll cost"</comment>


IRL Glasses – Glasses That Block Screens - <AUTHOR> https://www.kickstarter.com/projects/ivancash/irl-glasses-glasses-that-block-screens <comment><USER2> $80 (non-kickstarter price) for a pair of cheap frames and double-polarized lenses? Profit margins must be through the roof here.</comment>


Does it annoy you when unstyled content displays before CSS loads? - <AUTHOR> What's your ideal preference vs. practical preference?<p>- Load CSS asynchronously?<p>- Load CSS first and ignore the "Pagespeed Insight" complaint?<p>- It's not a big deal, nobody cares.<p>- Load all styles last.<p>- Load important styles first, unimportant last.<p>- Load CSS in stages and chunk out the visible parts with progressive gzip.<p>- Some other point of view. <comment><USER2> I'm an extreme minority.

I have CSS disabled and if your site isn't easily navigable without CSS, I leave.

<comment><USER3> What are you reasons for this?

<comment><USER2> I visit websites for information and to read them. Not to see how fancy designers can make the page look.

E:

If your page doesn't make sense without CSS enabled, your content is a mess and no amount of design is going to make it better.

[http://motherfuckingwebsite.com/](http://motherfuckingwebsite.com/)

<comment><USER4> I would upvote you but I can't without CSS.

</comment></comment></comment></comment><comment><USER5> I'm a bit confused by the question. On the one hand, it seems like it is targeted at users, since it's about annoying behavior. On the other hand, the options are technical and each of them is great when not leading to the user experience sucking and all of the suck when they lead to the user experience sucking.

My preference then is for software that doesn't suck and the way to get there is by testing implementations rather than picking a strategy based on personal bias. CSS should make for a better user experience, and that means that nobody should be aware of it.

Good luck.

<comment><AUTHOR> I figure a large percentage of HN users are technically sophisticated, and that point of view is as interesting to me as the non-technical point of view.

</comment></comment><comment><USER6> I'd take a look at the Gaurdian's (Newspaper) web team's presentation on this: Deck: [https://speakerdeck.com/patrickhamann/breaking-news- at-1000m...](https://speakerdeck.com/patrickhamann/breaking-news-at-1000ms- front-trends-2014)

Video: [https://vimeo.com/100505617](https://vimeo.com/100505617)

</comment><comment><USER4> It's not a big deal, nobody cares.

I'd prefer if it is readable without CSS though, as sometimes the CSS won't load from the CDN or whatever. That happens sometimes at home, must be something to do with my ISP.

</comment><comment><USER3> If it makes the page load quicker then I'm all for it.

</comment><comment><USER7> It's not a big deal, nobody cares.</comment>


Is it ever too early to pitch? - <AUTHOR>

So recently we began working on a project that seemed to have potential to grow into a startup. By coincidence, two incubators are in town giving talks and opportunities for students to pitch. I emailed one of the groups and set up a pitch, despite them running out of slots. At first I was excited but then I began to feel like we were moving too fast.
After talking to my co-founder I decided to cancel the pitch. We felt like pitching at this stage would be too early since we we weren't blocked by anything and we knew what to do next. We decided that it would be more advantageous to wait until we finish building everything.
What do you think? Is it ever too early to pitch your ideas to VCs/incubators? <comment><USER2> Your pitch is never "finished" because it's a living reflection of your conviction, your passion and most importantly, a tangible _opportunity_ (for investment, for employment, for customers).

You should pitch whenever you can, to whomever you can, until doing so is effortless.

A pitch is foremost a test of your own faith in your project. If there is any self-doubt, your pitch will betray it, and you will know you aren't ready (or that the idea and your execution aren't going to cut it).

So by all means pitch. Test yourself.</comment>


It's unclear what Section 230 executive order will do to social media companies - <AUTHOR> https://www.buzzfeednews.com/article/ryanhatesthis/trump-executive-order-section-230-twitter-fact-checking <comment><USER2> The main thread: [https://news.ycombinator.com/item?id=23342161](https://news.ycombinator.com/item?id=23342161)

</comment><comment><USER3> Nothing.... the President is not a king and can't order people/companies to de-exist and can't be above the congress....

At most there will be courts involved, and the order will be considered null and void. Similar to many of his executive provisions that got declared invalid by the courts.

This is just a narcissistic/rage hissy fits, or just another attempt to create noise and detract from the real issues of this country is facing now.

Basically another political show/childs play from our president

<comment><USER4> > Nothing.... the President is not a king and can't order people/companies to > de-exist and can't be above the congress....

You may want to read the article.

He's not saying Twitter "can't exist" (and why would he? It's his platform of choice.) -- it seems like they're going to say that if social media companies start editing content, they're no longer platforms and instead publishers, who can be sued for their content.

This could be very problematic for Facebook, Twitter, and Google, who would suddenly be open to a lot of lawsuits based on their users' content.

<comment><USER5> The easy thing to do is to have two policies: one for politicians, and one for everyone else. The policy for politicians will be one that holds their actions to a much higher standard than everyone else. The policy can say that metrics will be used to determine if the statements by the politician are false or misleading, and if a certain threshold is reached, they can/will(/should!) be banned from the site. They can provide a detailed analysis about how they came to the conclusion to ban the user.

<comment><USER6> Who is a politician and who isn't?

<comment><USER5> Thanks for the point of clarification: Elected officials, which should be easy for any social media company to determine, especially since, at least on Twitter and Instagram, they have "verified" profiles.

</comment></comment></comment></comment></comment><comment><USER7> Why does anyone pretend this is about anything other than changing the subject? He's approaching an election with a crashed economy and a plague he doesn't know how to handle. His range of motion thus far has been limited to yelling, whining and changing the subject, and the first two are not working.

</comment><comment><USER8> Does anyone have an actual link to the text of the order itself?

<comment><USER9> This is the alleged leaked draft from the other day: [https://kateklonick.com/wp-content/uploads/2020/05/DRAFT- EO-...](https://kateklonick.com/wp-content/uploads/2020/05/DRAFT-EO- Preventing-Online-Censorship.pdf)

</comment></comment><comment><USER10> "While signing the executive order on Thursday, the president said he would shut down Twitter if his lawyers found a way to do it. "I'd have to go through a legal process," he told reporters."

Cutting off the nose to spite the face

<comment><USER11> Assuming he could nuke Twitter off the face of the planet, I wouldn't see it as nose-cutting. His 80,430,710 followers would follow him to Facebook or Instagram. Or even Gab.

His direct pipeline would remain intact.

<comment><USER12> You say this very glibly but are you sure the question doesn't deserve more thought?

Everyone has a twitter account? How many people would you lose in transition just via friction? If he spewing hate via twitter to spewing hate via instagram/facebook then facebook might ultimately find themselves pressured to do something about it especially if a major US company had been cratered in an obvious repressive act of tyranny. Zuckerberg might lack in character and backbone but do you really believe all its employees are equally lacking?

If he moves to the neo nazi land of gab might even less of his followers follow? Can gab even handle increasing its userbase by 80x?

Do you think the nature of the platform doesn't matter at all as far as engagement or value of engagement? People engage on twitter a lot already even without the president. Familiarity implies normalcy. On twitter his crazy crap is bookended by all the more normalcy of people's regular lives. If it was surrounded by white supremacists and crazy it wouldn't carry the same cache and would turn off a good chunk of the moderates.

I'm going to call it. He can't pull the trigger on Twitter even if he was allowed because it would reduce the effectiveness of his messaging by half.

<comment><USER11> I wrote the "assuming he could" preamble because I agree with you that he can't pull the trigger on Twitter.

And you're probably right about the atmosphere on Gab not allowing him to use that platform to get the same reach.

But Facebook. That's a platform with more subscribers than Twitter. _Way_ more. 3 times as many in the U.S.

So, going with the premise that Trump _was_ able to nuke twitter, how quickly do you think Zuckerberg is going to pick a fight with him if he decides to post there 30 times a day instead of at twitter? I'm not so sure all that much.

<comment><USER12> I guess one question is why isn't he using facebook right now if its an even better platform?

Facebook is now that thing that I only ever log into on my computer when I want to talk to family members and ignore people sharing dumb things.

Twitter is that thing that chimes 2 seconds after someone I am interested says something interesting.

I don't think they are the same thing at ALL.

<comment><USER11> They're not the same, that's true. What drew him to twitter was exactly what you describe: people get notified 2 seconds after he sends something out. The whole use-case of following public figures. That wasn't a thing (as far as I know) on Facebook back then. You had to have a 2-way connection ("be friends") with each person you followed. (I think? I may be misremembering.)

It's how he won the presidency.

But now the power structure is different. The President and his followers can turn Facebook into something akin to twitter just by using it that way. The mechanics of any given service aren't written in stone. Facebook could easily ping your phone whenever someone you follow posts something new. Or Instagram, Snapchat, etc.

<comment><USER12> Even if HE used it that way it would still most likely be pinging me about useless crap. Trump can lose the presidency faster than facebook can turn into twitter.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> Politicians are trying to turn everything into politics. A politician was caught on a lie? The lie is insubstantial, because an accusation of a politician is politics by definition, isn't it?

</comment><comment><USER14> Little to nothing. The point is to troll and stir controversy in order to get attention. The man literally built his entire career on that, and unfortunately it works extremely well.

</comment><comment><USER15> So, at this point, the Covid 19 death toll has surpassed 100,000. Even if we can only attribute a small fraction of those deaths to Trump's complete negligence and mishandling, Trump's actions have led to more deaths than September 11-- _Trump has literally killed more Americans than Osama Bin Laden_. So I don't think we need to talk about Section 230 to show that he's a terrible president.

That said, I'm having trouble seeing how Trump is wrong in his application of Section 230. Section 230 was intended to protect free-speech platforms by allowing them to eschew editorial control without being held responsible for what users say. If Twitter starts exercising editorial control, then doesn't that mean that they should be held responsible for what's said on their platform? This strikes me as Twitter wanting to have their cake and eat it too: they don't want to the legal liability of editorial control, but they don't want the bad PR of allowing free speech on their platform.

If we're actually basing our laws and their enforcement on principles, then we a) have to decide whether Twitter is a content platform or a communication platform, and b) we can't just abandon our principles because Trump accidentally says something correct.

</comment><comment><USER16> One thing is for sure.

No more ability to cut costs like they have had the luxury to do so thus far.

</comment><comment><USER17> It would be really funny if Twitter decided to just ban Trump's account outright. Preferably some three or four weeks before election.

</comment><comment><USER18> Who knew that the right wing would be the one trying to limit free speech of private companies??

<comment><USER19> How does this limit the free speech of private companies? Does a company have free speech?

<comment><USER20> > How does this limit the free speech of private companies? Does a company > have free speech?

Yes! And very broadly so: [https://en.wikipedia.org/wiki/Citizens_United_v._FEC](https://en.wikipedia.org/wiki/Citizens_United_v._FEC)

(Which, as much as it pains me as a hippie liberal to admit it, is probably the best decision in context. Enshrining even things like corporate election finance as "speech" makes is VERY clear that government regulation of actual opinion on behalf of private entities is verboten. At the time none of us saw Trump coming, but if the price for protecting a twitter correction is a bunch of Comcast-funded PACs? Yeah, I'll pay that.)

</comment></comment></comment><comment><USER19> I'm reminded of this cheeky comic from 2009[1], which shows Obama in the caves Mt Doom with the ring, inscribed on it "executive privilege" and "state secrets". Not wanting to forfeit its power, he decides to keep it. Now here we are, with executive orders flying out the door.

Slowly, surely, we have allowed an unprecedented growth in executive action. Haven't we decided already that it's okay to be in a perpetual state of war since 2001? Why have we allowed the military industrial complex keep us embroiled in foreign wars for half of our lives?

And if you want a glimpse at how powerful and non-partisan this complex is, look at the pushback the president received when he tried simply to pull out of Syria.

1\. [http://thisishistorictimes.com/2009/02/one-ring-to-rule- them...](http://thisishistorictimes.com/2009/02/one-ring-to-rule-them-all/)

<comment><USER21> The pushback about the Syria pullout was absolutely insane to me. If there was a conflict that was going to trigger a NATO Article 5 invocation that was it. Russia, Syria, Turkey (a NATO member for reasons that escapes me) ... it all had the feeling of a trigger point, and _still_ people wanted us to keep lobbing missiles and sending troops to a conflict we had no business being involved in.</comment></comment>