Replacing code once it hits big? - <AUTHOR>

flexterra wrote "Use whatever you know best. This decisions tend not to be so important. If your app becomes real big you will end up replacing most of your code anyway. The most important thing is to build and launch as fast as possible."<p>I'm not a web developer but learning to be one. I hired a few programmers from India to prototype a v1 of a web app. If it ever becomes big, is it really possible to rewrite the codebase? Cause Isn't rewriting a site from scratch considered bad? <comment><USER2> Complete rewrites are considered bad because over time code accumulates implementations of below-surface knowledge that often gets overlooked and can take a lot of time to re-discover. Edge cases, debugging voodoo, pony requests - there are lots of reasons why this happens. Pseudocode example: if users A,C,P try to submit report x on dates y1...y3 make sure to remind them of policy change z. Because this type of code often is very chaotically codified in the physical world - your German intern, who documented his code in English and German and passed away last summer in a freak glockenspiel accident, rest his soul, received a bunch of bug reports through email, the old bugtracker and fax from your European customers - it may be very easy to miss during the requirements gathering phase of your rewrite.

On the other hand, if you're about to become as big as Twitter and Facebook wrt managing users, data, latency and traffic, you'll have to do all kinds of performance optimizations throughout your entire tech stack. This _might_ involve rewriting your code because your code is based on fundamentally flawed design decisions (hey, non-concurrent code seem like an fine idea when you started out with your batch processing but pretty soon you'll need to time travel if those nightly cronjobs are to be finished in time) or too cthulhulian to mantain anymore. But then again, 99.99999% of all sites simply don't consistently experience performance issues on the same level as Twitter or Facebook, so that's another reason why you should focus on agility and delivering value instead of performance (unless, of course, performance truly _is_ a key feature) initially in a software project.

<comment><USER3> I think developers should be conscious of the underlying performance issues/workarounds of their platforms and technologies and implement those early. There is nothing worse than wasting capital early just because you have to throw servers at something once you hit exponential growth.

</comment></comment><comment><USER4> Yes, rewriting from scratch is considered bad. However, rewriting from scratch isn't the only way to improve a codebase. It's also possible to refactor it gradually, making a series of smaller changes rather than on big change. This has a bunch of benefits:

\- It preserves all the built up knowledge encoded in your codebase, as you're never throwing away everything and starting over.

\- It makes it possible to continue feature development during the refactor. Often with big ground up rewrites, it's necessary to declare a feature freeze, often for months at a time. Otherwise, the team that's doing the rewrite is constantly trying to play catch up to the newly developed features.

\- It can be done gradually over time, which decreases the investment necessary to start seeing some gains.

Many people shy away from incremental refactoring when it comes to making large scale changes to a code base. They seem messy, expensive, and time consuming. And guess what? They are. But a ground up rewrite will generally be even messier, more expensive, and in the long run, more time consuming.

</comment><comment><USER5> I have to actually disagree that complete re-writes are bad. Like anything else, there are very valid reasons for it.

There are several reasons to do a re-write: 1) The technology stack has changed and implemented new features which will make future maintenance easier (or has found issues with underlying implementations in older versions).

2) Business process/site design issues have come out for which patching code will cause undo stress to the code structure.

3) Those edge cases discussed that have been added are causing severe performance issues because the customer/end user is using the system differently than expected.

4) Underlying security vulnerabilities.

Now, re-writing/re-factoring for the sake of doing it is probably a waste.

</comment><comment><USER6> Complete rewrites are considered bad, yes.

However, IF the codebase is really, really bad, or your requirements have changed a LOT, and there is little learning embedded in your code, complete rewrites may be necessary/useful.</comment>


Show HN: a free multi-user whiteboard with unlimited, zoomable surface - <AUTHOR> http://sketchub.com/ <comment><USER2> The front ends seem to get desynchronised when two incompatible concurrent edits happen; this is a difficult issue to resolve, but one solution would be to change the data flow so local edits are drawn by the client on a transparent canvas, get sent to the server, and then get drawn on the underlying main canvas only when they are sent back from the server. The transparent canvas can be reset by the client at that point (you might need some synchronisation mechanism for this), so all users will end up having consistent state once edits have been processed by the server.

<comment><USER3> This is what we do for <http://300lin.es> ;)

edit: My God, it's full of cocks.

<comment><USER4> Quit hint: it's too easy to make a DOS by quickly drawing hundreds of lines in the same spot. It doesn't take more than two minutes and regular writing or drawing is too slow and ends up erased before finished.

Maybe limit the number of lines an user can draw during a certain time?

<comment><USER3> Thanks :) Yeah, we limit the length of line to try to avoid scribblers. We thought of rate-limiting the number of lines too, and adjusting the limit, so the first time you hit the limit you're stopped for 1 seconds, next time for 2 seconds, then 4, 8, 16 and so on.

Would probably work quite well.

PS is your hostname 'bd222 __edited for privacy __.com.br' ?

<comment><USER4> Yep, that would be me. Sorry if I broke something, it started as an attempt to remove the random lines obscuring the drawings and text. When I noticed the fade out effect on the lines, I had already erased everything D:

<comment><USER3> yeah no worries, I just wanted to check that it wasn't someone trying to attack the site :)

</comment></comment></comment></comment></comment></comment><comment><USER5> To me the zoomable, unlimited surface part is what makes it super neat. I might actually use it if I had some way of typing text on there..

I suppose for a tablet it is awesome though.

</comment><comment><USER6> I would definitely use it. Add a [T] icon for texts as writing with the mouse is meh!

<comment><USER7> +1 - esp if you could 'box' the text then be able to use it. This would be great for running a remove agile board.

Nice idea - great execution.

<comment><AUTHOR> Added a [T] icon!

</comment></comment></comment><comment><USER8> Very cool. There are some minor issues though.

Here is my sketch: <http://sketchub.com/view/d4b8fcb36fe4b078b100069bafebd352>

I'm using a Thinkpad with Wacom enabled display and stylus. It 'should' say 'hello world' 3 times and have an underline after each one.

In the saved and view only link, it shows a 4th 'hello world' on the left and more slanted. It was erased before my real test.

It seems to miss certain strokes as you can tell by the sketch. Mainly straight lines. This might have been caught as trying to move the sketch area, but it did not move or register the line.

(As a control test to check display and stylus, I wrote the same text in OneNote and it was handled fine.)

</comment><comment><USER9> I work in a distributed office, and over the past few days I've been trying to find a "concept mapper", which helps us to make projects more concrete through flowcharts etc. The problem that I keep on facing is that the web apps which dominate the current market just don't cut my needs. They don't allow for proper exploration, and collaboration is a frustrating progress. We would gladly pay for a tool that doesn't get in our way and just lets us all communicate.

I think that you will find a ready market, if you can solve the thorny problem of communicating projects, which involve several interconnected parts/ideas.

I know for a fact that I'll buy it.

<comment><USER10> have you looked at Creately? I've been using it for a month or so and it seems pretty good: <http://creately.com/>

</comment></comment><comment><USER11> Yes, you need text and images. The company I work for has been looking for a simple, fast, and _good_ solution to make notes over webpage wireframes. I think this could be it!

<comment><USER12> Try our Woobius Eye tool, too, it's pretty neat for collaborative visual work.

See: <http://woobiuseye.com>

And a video of how it works: <http://www.youtube.com/watch?v=Vhox59Ia5yc>

<comment><USER11> Thanks for that link. It looks promising, but the canvas is just too small.

<comment><USER12> Click on "New Advanced Mode" on the right hand side. Big version, multi-page, etc...

<comment><USER13> For some reason to me this looks like an Yahoo product, whereas the one linked in the OP looks like Google.

<comment><USER12> Huh. I'm not sure that's a compliment...

</comment></comment></comment></comment></comment></comment><comment><USER14> sum up your pitch to make it easier for users to get what you are pitching.

"collaborative zoomable user interface to create sketches" is the same as "multiuser whiteboard" just easier to get.

<comment><USER15> As I believe the zoom makes it more unique, "multi-user whiteboard offering unlimited zooming", or the likes. But you're absolutely right.

</comment></comment><comment><USER16> Very nice - you should do what I figured out for a project - momentum when there is a big action, and fine control for small actions - if I scroll the wheel dramatically, give me some momentum on that zoom - if I scroll it slowly, no momentum and fine increments (like you have now)

The way I did this in javascript was to create an array of zoom in/out and the four directions - then you add or subtract from the array based on intensity of gestures over time - even keyboard action keys (+/-) can have momentum this way by adding when there is continuous keypresses - I was pleased how it turned out in the end.

</comment><comment><USER17> I would have liked the ability to change the line thickness, to work around you'd have to zoom out or in depending if you wanted a line thicker or thinner with the latter being particularly difficult as it's harder to keep track of where you are in relation to the rest of the page.

</comment><comment><USER18> Cool stuff!

I've looked a bit at what it uses: shapes drawn are vectors, the app uses Raphael (<http://raphaeljs.com/>) for drawing, and Pusher (<http://pusher.com/>) for whiteboard syncing.

<comment><USER19> Regarding the Pusher web site, am I the only one who cannot resist the temptation of loading up Firebug to verify whether the counter is for real or "interpolated"?

<comment><USER20> Unfortunately it's not really viable to sent a counter msg for every msg which goes through the system ;) Our stats and logging has to be somewhat delayed.

</comment></comment></comment><comment><USER21> <http://sketchub.com/jte1y8agb4>

<comment><USER22> Instead of having tonnes of empty test pages, why don't we all just agree to use the parent of my comment as the test canvas for this thread?

Edit: I somehow cannot draw in the one I suggested. Sorry.

</comment></comment><comment><USER23> Cool. I'd love to be able to upload an image, or series of images, to draw over.

</comment><comment><USER24> Great tool ! Simple and focused. Maybe two things a little more helpful : 1\. The ability to press Ctrl+Z to undo 2\. A global reset button (not so important as we can refresh the page)

I would love to try this on an iPad with a pen.

</comment><comment><USER25> This is awesome, I'd just like to have a tool to write with my keyboard.

</comment><comment><USER26> this is pretty neat, from a designers point of view here are some things I'd suggest:

\- something like a photoshop navigator where you see your zoom level vs your current canvas. Currently it's quite easy to zoom out a lose your stuff. \- alternatively have a zoom % and return to 100% and center \- As well as the current freehand drawing style, have a version that straightens the lines for you. \- keep line thickness at any zoom level so it's not so bad when you zoom back in (although I can think of nice uses as it is) \- write text

<comment><USER27> Totally agree, I'd like to be able to draw a straight line as well. I don't have that talent manually =) Some command such as shift would be nice for this, as well as the ctrl + z command

</comment></comment><comment><USER28> I'm not sure if it's just me, but there seem to have been a few very similar sites/ideas posted here over the last few days.

Well done for making it work in IE though =)

<comment><USER29> Not working in IE 8 for me at least :) Works fine in Firefox. Great app, would be very interesting to try it on one of them digital whiteboards.

<comment><AUTHOR> On a multitouch table it works great: <http://www.youtube.com/watch?v=LpDp2Izx4W8>

<comment><USER30> Florian, what's the device you are using?

<comment><AUTHOR> sorry, but I don't know the hardware details. It was a laptop with external display, multitouch was plugged in via USB and handled by a software called dreaMTouch.

</comment></comment></comment></comment></comment><comment><USER31> If this is like switching between layers using your scroll-wheel, let us push part of the sketch back or forward, scale down or up.

</comment><comment><USER32> Awesome, but with more keyboard shortcuts I'd use it all the time. (CTRL to pan, different keys to select different things)

<comment><AUTHOR> Use the space bar to pan like in PhotoShop, other shortcuts coming soon!

</comment></comment><comment><USER33> Not working here on my HTC Desire with Android 2.2. Looks like there is no way to draw.

<comment><USER34> Similar issue on Desktop Opera 11.50.

<comment><USER35> I'm on Opera 11.5 / OSX 10.6.7 - can view but not draw.

<comment><USER35> Also: firefox freezes when I try to open a 2nd tab with a different whiteboard.

</comment></comment></comment></comment><comment><USER36> Looks great on iPad, well done.

<comment><USER37> Doh - it seems to crash safari when I go to it on my iPad? iOS 4.3.5

<comment><USER22> Working fine on 4.3.5 here, just emailed a link to several friends to see what happens over the next couple of hours with it. The best bit about it is the super-low barrier to entry/sharing.

</comment></comment></comment><comment><USER38> Infinite zooming is nice. How is it implemented? I would like it as a library.

<comment><AUTHOR> The library is already out there, I open sourced it: <https://github.com/florianguenther/zui53>

(but it's very early beta, bad documented)

<comment><USER39> Thanks for sharing

</comment></comment></comment><comment><USER40> Looks a lot like Khanacademy's Scratchpad they recently open sourced.

</comment><comment><USER41> Very cool, unlimited zoom is an awesome idea

</comment><comment><USER42> If you zoom in too much, it's very lagging. Strange, It should be when zooming out (FF 5.0)

<comment><USER43> Zooming out too far on chrome makes the input not show up properly, and occasionally crashes the browser window.

Additionally, after zooming out for a bit, I wasn't able to get back down to the layers I was drawing at before.

</comment></comment><comment><USER44> find the hidden word: <http://sketchub.com/xuugfkbshr>

</comment><comment><USER45> genius</comment>


Clever (YC S12) Gets $30M to Become the Login Layer for Education Apps - <AUTHOR> http://techcrunch.com/2014/12/16/clever-30m-lightspeed/ <comment><USER2> Um, is anybody _NOT_ overly happy about this?

I'm not happy to have yet another centralized login system. I'm not happy to have yet another company collecting analytics. I'm especially not happy that those analytics are about children.

I was going to slag startups about security, but, hell, big companies don't bother either, so that would be unfair.

<comment><USER3> Thanks for raising this issue. I'm one of the founders of Clever, a former educator, & super privacy conscious. I'm really proud of the work we're doing for a few big reasons:

1\. When schools adopt Clever, they often tell us about the way they were setting up software previously. It's _always_ inefficient (i.e. teachers hand- entering class lists every week), but all too often insecure (i.e. faxing attendance sheets, or emailing XLS files to a support team). Clever improves both efficiency and security dramatically.

2\. Without centralized login systems, teachers report just getting their class logged in to an app takes 25% of class time on average. The friction of using technology is preventing students from learning. Clever eliminates that friction.

3\. Clever is a tool schools use to manage their applications. They manage data sharing & own any data in Clever (our TOS & Privacy Policy make this very clear).

Please let me know (firstname.lastname@example.com) if you have suggestions for how we can improve privacy or security for students. It's our top priority & one of the biggest reasons we raised this round.

<comment><USER4>
        teachers report just getting their class logged in to
        an app takes 25% of class time on average

That sounds made-up to me. That would imply some classes spend upwards of 40% of their time logging kids in to an app?

        Clever improves both efficiency and security dramatically.

How? Also how is faxing/emailing attendance sheets any less secure than routing their precious data through your servers?

<comment><USER5> First off, I am not with Clever but I have spent a fair amount of time looking at their platform.

Being in the industry, I think the 25% number is high. It is a significant frustration especially in lower grades if kids have different username/passwords for every education app they are using during their school week. I think this is a pretty good idea and it helps. However as schools move to Chromebooks more and more I do wonder if schools will push more for vendors to just integrate directly with Google's login since all users have to have a Google account to use the Chromebook. Maybe Clever supports this? I haven't looked into it lately.

The way they improve efficiency is due to fact that schools will no longer need to upload CSV files nightly to vendors servers to update their student rosters. Many inner city schools have a very high degree of student transience (meaning kids move schools a lot) and this is a huge pain to update across multiple vendors every day. A lot of vendors support the upload of CSV files to provide an updated list of student rosters. Imagine how much easier it is for the schools if they don't have to do any of that or only have to integrate with one vendor. I can't speak to the security side and how they improve that really.

They do charge the vendors at the school level and for many vendors their fees can really eat into their margins and so I still think you see a lot of vendors relying on CSV files. Schools are used to doing this and so setting up one more job to upload the same file every night is not a huge burden to them.

<comment><USER6> Not to mention that every vendor has different formats.

</comment></comment></comment></comment></comment><comment><USER7> First, congrats on the raising of funds!

Last time I spoke with higher ups at Clever, it was mentioned that deep integrations were not on the roadmap (e.g. pushing into SISes like Infinite Campus for things like health, attendance, grades, etc). Some of that has to do with how the problem is being approached technically at Clever, IMO. While tackling student logins and thin system integrations is cool, are there yet plans to go deeper?

For a time, I had very seriously considered entering this particular space as a competitor, as I am referred to do integrations, where Clever falls short, for districts on an almost weekly basis (which I decline these days). As a competitor, it was my intention to include extremely deep/bi-directional integrations with all systems (including SISes, like Infinite Campus), purely horizontally scaling infrastructure, process/data isolation (security and privacy is a huge concern for districts), distributed processing so that data never need to leave local district data centers, taking functional/stream programming concepts to allow for fully customized integrations per-district built on the same base for each directional system integration, mock integrations for staff members to play with their rules, etc. It can all be done on a technical front (I did on a per-district basis, many times), but I eventually decided it wasn't a great fit for where I wanted to go in business.

I mention all this because I hope someone, perhaps you Clever (knowing you are HNers), addresses this huge need by the districts. So much energy is being spent on things that shouldn't be issues at all... It's a horrible joke that districts have to spend energy on unified login systems, but it is also a joke that moving grades/attendance back and forth between systems for state reporting, for instance. It is not something teachers should have to spend time on. Syncing of student accounts, teacher accounts, admin accounts, enrollments for each, courses, sections, permissions, grades, attendance, health, ILPs, RtI, etc.. it goes on and on. You have the funding and man-power to pull it off, I'd love to see it.

<comment><USER7> BTW, with deeper integrations... you open up some unique opportunities to solve big problems for districts:

Done right, deep integrations mean you, in-effect, have a way to get to all data within a district (data warehouses go for six to eight figures and districts eat it up, as you know). The power of being able to get to data district-wide... You have that obvious route for analytics and reporting now, but what if you were to take the next step... ML/NLP/AI... you can do truly interesting work now. Measure teacher effectiveness, dropout prediction well before it occurs, academic achievement prediction to catch kids before teachers can (because you see the whole picture), recommending interventions that have worked for students in similar scenarios, etc. Now that's cool.

<comment><USER8> "Recommending interventions" is a piece of what Knewton does. But we don't need PII or demographic data to do it. We are integrated with the digital course materials (Pearson, Houghton Mifflin Harcourt, Cengage, etc.) and work inside those products to provide real-time student recommendations, predictive analytics for teachers (intervene ahead of time), and content insights for publishers to change content or create more where it's needed most.

</comment></comment></comment><comment><USER9> I think many people might not realize how much education has changed since they were in school (K-12) - there are now hundreds of educational apps specializing in all parts of the curriculum.

It's crazy to organize (hence why Clever is loved by schools) but the proliferation of apps is very useful for teachers to find the right tools for them.

<comment><USER10> How does this education ecosystem change in other developed countries? Do they have the same abundance of apps and options? Does clever have any plans on moving into these other countries (Canada, Europe, Australia)?

<comment><USER9> hmm - I can't really speak about the differences (sorry!), and have to be lame and punt your 'future plans' question to the quote from our CEO: "Our goal is to help all schools, and that includes international as well," Bosmeny told me

</comment></comment></comment><comment><USER11> We're also hiring. We have some extremely ambitious goals, and we need more great engineers to hit them. Check us out at [https://clever.com/about/jobs](https://clever.com/about/jobs) or let me know if you'd like to learn more: email@example.com

<comment><USER12> Awesome^3. Keep it up :-)

</comment></comment><comment><AUTHOR> Using technology to spur innovation in the education space is so easy to get behind.

</comment><comment><USER13> So Clever is the App Store for education?

</comment><comment><USER14> So what does this offer that a distributed system like shibboleth doesn't offer?

</comment><comment><USER15> anyone know the valuation?</comment>


A System for Accessible Artificial Intelligence - <AUTHOR> https://arxiv.org/abs/1705.00594 <comment><AUTHOR> _It is our working hypothesis that:_

 _AI has matured to the point where it should be an accessible technology for everyone._

That's an interesting premise. Luckily, a lot of modern AI already is accessible to everyone. Much cutting edge AI/ML software is F/OSS[1], and the AI community (indeed, the CS community in general) regularly submits pre- prints to arXiv.org[2], and major journals like JMLR[3] and JAIR[4] are Open Access.

That said, I'm sure there's room for more work in this area.

[1]: [http://mloss.org](http://mloss.org)

[2]: [http://arxiv.org/corr/home](http://arxiv.org/corr/home)

[3]: [http://www.jmlr.org/](http://www.jmlr.org/)

[4]: [http://jair.org/](http://jair.org/)</comment>


Alan Kay - 2012 SCIx Keynote Presentation - <AUTHOR> http://www.youtube.com/watch?v=BbwOPzxuJ0s

<comment><AUTHOR> One of the most interesting and entertaining IT presentations I have ever watched.

It's mostly about Xerox PARC and the American pioneers of modern computing in general.

</comment><comment><USER2> This talk is a mindblowing series of lessons on the history of our field and on what great technical management really is. It fills in some crucial historical details, like the relationship between ARPA and Xerox PARC. But the most interesting thing is the values that it conveys—basically, the technical values (and people) that gave us both the internet and personal computing. Considering the staggering importance of what was produced and how this stuff is not at all common practice, any window into it deserves attention.</comment>


Ask HN: What's the best tutorial for iPhone development, sans Interface Builder? - <AUTHOR>

I tried out Interface Builder, but I'd prefer just to write the code. I understand this is reasonable and many iPhone developers don't use IB.
Does anyone know any good tutorials/resources about this?
All I have found so far is this video: http://www.vimeo.com/3363949 <comment><USER2> What's wrong with Interface Builder?

<comment><AUTHOR> Probably nothing if you are used to it, Dreamweaver, or Eclipse.

I just like to type code.</comment></comment>


The Feynman Lectures on Physics: Algebra (1963) - <AUTHOR> http://www.feynmanlectures.caltech.edu/I_22.html <comment><USER2> One thing I will always appreciate about Feynman as a teacher is that he never shies away from telling you _why_ things work the way they do. I've spoken with a lot of people who "hate math" and it's almost always because they never had a teacher that went into the whys and wherefores behind equations, tables, graphs, etc.

Here we have a plainspoken yet rigorous explanation of what algebraic operations _actually mean_ (addition is iteratively adding 1 _b_ times; multiplication is iteratively adding _a_ _b_ times; exponentiation is iteratively multiplying by _a_ _b_ times, etc.).

I wish more students would have the chance to build up such intuition, for such intuition is the key to keeping oneself interested in math and not finding that one "hates" it.

<comment><USER3> I stopped enjoying math for about this reason. My university tried to teach with proofs, which to me is about as far from an intuitive understanding as possible

Looking for recommendations on lectures / course that goes over linear algebra in this way

<comment><USER4> > I stopped enjoying math for about this reason. My university tried to teach > with proofs, which to me is about as far from an intuitive understanding as > possible

Interesting, because until I had the proofs for eg differentiation, or heck even the quadratic formula - they were meaningless rote learnings. The proof _is_ the intuition imo

<comment><USER5> Exactly! Proofs are why I love mathematics so much. There's nothing quite like the great "ah-ha!" moment when you find that one leap of logic that topples the rest of the dominoes in a proof. Of course, I understand that some people are better at teaching proofs by involving students in the discovery. Maybe the parent commenter was taught proofs in that same rote manner. I've had professors that have done that, and it's like someone sucked all the fun and learning out of the subject.

From the preface of Computation: Finite and Infinite Machines by Marvin L Minsky:

> The reader is therefore enjoined not to turn too easily to the solutions; > not unless a needed idea has not come for a day or so. Every such concession > has a price—loss of the experience obtained by solving a new kind of > problem. Besides, even if reading the solutions were enough to acquire the > ability to solve such problems (which it is not), one rarely finds a set of > ideas which are at once so elegant and so accessible to workers who have not > had to climb over a large set of mathematical prerequisites. Hence it is an > unusually good field for practice in training oneself to formalize ideas and > evaluate and compare different formalization techniques.

<comment><USER6> For proofs, could you recommend any good resources for a beginner? Is there a 'beginner proof' that's great to start with?

I figured out I actually like maths waaaay after I'd left uni. From that time at uni I have a vague memory of proofs being something like a whiteboard full of equations that I got lost somewhere in.

I have a vague feeling that what I'm thinking of is 'formal proofs', but I'm not sure.

<comment><USER7> Euclid. He tried to prove theorems of basic plane geometry (hence "euclidean geometry). Since we all have an intuitive understanding of (at least the basics of) plane geometry you can look at the work and not have to also learn the domain.

People recommending the classics can come off as pretentious so I will add that I am serious: a modern book of Euclid's methods should be quite accessible.

As a followon bonus: Minsky's and Papert's 1967 book "Perceptrons" (the one that said you can't do XOR with a single-layer network, though you can with a multilayer one) that lead to 25 years of lack of interest in neural networks is entirely about using neural networks on Euclid. So you can go from one to the other!

</comment></comment></comment></comment></comment></comment><comment><USER8> And this is what gets me about Feynman, why I am a huge admirer of his work.

Take a look at the footnote. An offhand comment of how to calculate the square root of any N using a short iterative loop that you can compute by hand.

I'm no mathematician (clearly) but I had no idea that this method even existed. I've just had to try it out.

And it's a footnote!

I have the book of Feynman's computation lectures and they're dated, but most of the theory is still relevant and his writing remains accessible to anyone.

<comment> grey--area Here's the method that's being applied: [https://en.wikipedia.org/wiki/Newton%27s_method](https://en.wikipedia.org/wiki/Newton%27s_method)

It's an iterative method for finding x such that f(x)=0 for a given function f, in this case f(x) = x^2 - N, where N is the number you want the square root of.

The special case has such a simple expression, though, that I'm tempted to commit it to memory.

Edit: Another nice example, for when you have access to a calculator that can compute powers but not logarithms: a' = a - 1 + x/c^x will converge the base-c logarithm of x (though it will converge slowly if you start very far from the solution).

<comment><USER9> At it's core, it's also what drives Carmack's Fast Inverse Square Root ([https://en.wikipedia.org/wiki/Fast_inverse_square_root](https://en.wikipedia.org/wiki/Fast_inverse_square_root)).

Yes, yes, I know Carmack didn't invent it.

</comment></comment></comment><comment><USER10> There's something delightfully physicsy about deriving Euler's identity, which famously deals with the irrational and the imaginary, by brute force calculation using log tables and fudging the fifth decimal place. But the approach of sneaking backwards into the algebraic continuation of e^x by actually doing the arithmetic is a great way to viscerally _get_ that it's all just the same set of mathematical tools.

</comment><comment><USER11> If you can find it an audio recording of this lecture is also available and it is one of the best lectures in the series. Feynman really brings forward the "soul" of algebra and the illustrates how powerful the art of abstraction is. Audible has all the audio lectures for sale, which is how I got them on my kindle, and I have also seen them floating around the net in other formats. I wish Caltech would release the audio material like they did the books!

<comment><USER12> The article has a link to a page which has the audio:

[http://www.feynman.com/the-animated-feynman- lectures/](http://www.feynman.com/the-animated-feynman-lectures/)

<comment><USER11> The audio in the link appears to only be a 5 minute excerpt, not the full 50 minute lecture.

</comment></comment></comment><comment><USER13> The Feynman lectures is one of my favourite books ever. Yet, this chapter specifically is the least enjoyable for a mathematician. Somehow I find he's trying to explain very simple concepts using way too many words, which is the opposite style of the rest of the book.

<comment><USER14> It's deliberate. In his book _The Character of Physical Law_ , Feynman discusses some differences in how physicists and mathematicians approach math.

</comment></comment><comment><USER15> I was reading the 1993 bio Hard Drive about Bill Gates recently (great to go back and read old books centered on tech, really makes you remember why people hated Bill/Microsoft...and he'd barely gotten started!) and it mentions several times that Gates would watch these lectures in what he considered his "down time"

</comment><comment><USER16> My high school math teacher taught us a class where he followed this general outline, building up the number systems based on which equations we couldn't solve.

Now I know where he must have gotten it from.

I think it must have been around grade 10 or 11.

</comment><comment><USER17> He does a numerical computation of the complex powers of 10 (to five decimal places) and they still are on the unit circle. And this was done in 1963.

</comment><comment><USER18> This specific Feynmann Lecture popped up very recently either here or on lobste.rs. I have since bookmarked the "FLP" series as I really want to come back to it, but I'm curious if there is any significance to why the Algebra lecture in particular was submitted a couple of times. Is it just coincidence, or was it a particularly good one?

<comment><USER19> It's one of my favourites. Aside from Feynman's clear and enthusiastic style, I find it's remarkable you can start from counting 1,2,3 and by a bit of reasoning come up with logs, complex numbers and:

>This, then, is the unification of algebra and geometry.

I can't help wondering if you could go further and come up with some physics.

<comment><USER20> That material is covered in all STEM curriculums as part of the Calculus sequence.

For most students, the sublimeness of getting to the Reals and beyond tends to get lost in the grind of lectures, problem-sets and exams.

Feynman had a knack for getting straight to the essence of a subject, that's why people love him so much.

As for algebra + geometry with physics, there are people who have cut a path to that (see texts by Hestenes), unfortunately, it requires some mathematical sophistication and most curriculums simply don't have the time to reach that level for undergrads, given the way that they're structured.</comment></comment></comment>


Tesla self-drive mode filmed 'endangering passengers' - <AUTHOR> http://www.bbc.co.uk/news/technology-34603364 <comment><USER2> Only proves that people expect too much out of technology and that it is oversold by those peddling it. We have not reached the point where this technology can outwit stupid.</comment>


Why RubyGems Needs Loren Segal - <AUTHOR> http://jamesgolick.com/2011/6/1/why-rubygems-needs-loren-segal.html

<comment><USER2> James makes a great appeal for Loren in this post, and there's no denying that SlimGems has made us all think, and brought many interesting issues to light. However, it's hard to realistically expect one to go from being the maintainer of a hostile fork to the maintainer of the project they forked overnight.

But that having been said, Loren is one of the few people qualified to really speak on these issues. He's studied the internals of RubyGems, he is aware of many of the problems with the previous ways of doing things. In particular, he's a proponent for stable APIs so that breakage becomes a thing of the past. I've spoken with literally hundreds of people over the last two weeks about this issue, and I'll be the first to admit it's one that needs to be solved. The question now is not whether it must be done, but when and how the changes need to be introduced.

These are questions that I feel I must at least strongly consider the opinions of the current maintainers of RubyGems on, because for example, Eric Hodel has been the core team for 4 years and knows more about RubyGems than anyone on the planet. There is no denying that Eric+Ryan have had personal conflicts with Loren, which would make an immediate appointment of Loren on the core team unrealistic.

However, Evan Phoenix (another of RubyGems maintainers) and I are trying to see if we can find a way to solve this problem outside of RubyGems first through a compatibility gem, in a minimally invasive way to users. We have already talked with Loren some, but I hope that dialogue continues so that he can possibly help us with our ideas and build something that everyone can be happy with. This to me would be much better than the division that would be caused by a fork, and is something I think we should at least try before we make any sweeping changes in leadership.

I've promised to back off the diplomacy and start hacking to solve the problem, and that's what I'll do in the coming weeks. But I felt it was necessary to share my thoughts here simply because I've been listening to so many people about what their concerns are with RubyGems, and that makes me really want to find a solution that works. If Loren can be part of that solution, I'd love to see him working for RubyGems rather than against it, for sure.

<comment><USER3> > hostile fork

What's hostile about proving points with code?

> ...the division that would be caused by a fork...

You still haven't explained what the problem with this "division" is. Why will this be different than the rails/merb fork? Honest question: are you afraid of division or of your friends losing control of the project?

> There is no denying that Eric+Ryan have had personal conflicts with Loren...

As well as just about anybody else who has tried to work with them.

> However, Evan Phoenix...

Evan is a great and brilliant guy, but let's be honest here. He's another personal friend of the current maintainers and (former?) Seattle.rb member. We need fresh blood.

<comment><USER4> Merb was never a fork of Rails. It was a separate project, initially created to address a particular shortcoming of Rails (file uploads, IIRC), and grew into a competing implementation that solved a lot of the same problems that Rails did in a simpler, more elegant way. The Rails core team realized that Merb did a lot of things better and absorbed most of that goodness.

SlimGems isn't Merb. It's not new, it's not doing anything better. The only thing it has going for it is "Hey, it's not being run by these same assholes." Well, that doesn't help me much. SlimGems isn't going to ship with Ruby 1.9.3, and it doesn't solve any problems that RubyGems doesn't solve. Loren could be making a better RubyGems, but instead he's making an older RubyGems.

<comment><USER5> Well, the other thing it has going for it is that it works. So far I've had no problems with SlimGems on the half dozen or so projects I've tried it with. The same cannot be said for RubyGems 1.8 and most of the releases since 1.3.7.

</comment></comment></comment></comment><comment><USER6> All of a sudden, there's some drama concerning RubyGems. For me, it's one of the best things about the Ruby ecosystem. That and the fabulous gems for web development. There's a lot of bleeding edge development of the Ruby language and the ecosystem, but that's also a downside in a lot of breakage due to api changes. Ruby was supposed to make my life as a programmer easier. I need more stability. I think I'm too old for this stuff.

<comment><USER7> I second that. Gems are great and even though this whole rdoc, ri stuff is slow to build it is certainly not the dealbreaker in rubyland. When someone spends too much time with something like rubygems they tend to overestimate the importance of this or that feature. The importance of rubygems still working on the otherhand cannot be overestimated. When I try to get a company to accept ruby in lieu of PHP the last thing I need is installation upgrade nightmares with the sysadmin there because I can't figure out how to bring his server to run some library I use.

</comment></comment><comment><USER8> Ironically, the guys who maintain rubygems also wrote <http://rubyhitsquad.com/>, in which they vocally slam another mainstream Ruby project.

</comment><comment><USER9> I don't use Ruby, but... if people have so much time to whine about deprecated APIs, fork RubyGems, blog about it, and spam HN three times a day... can't they just fix the gems that use the deprecated APIs and move on with their lives? It's not as dramatic as creating Internet Drama, but it's probably much better for the community.

The Ruby community seems to have a lot of people with time on their hands (and strong opinions), but it seems that these people with time on their hands just rewrite the same shit over and over and over again. Move forwards, not sideways...

<comment><USER10> The reason Rubygems causes so much ire is that it is at a choke-point in the ruby ecosystem. Not every gem is actively maintained, so _just fix the gems_ is easy to say, harder to do.

The rubgems maintainers are in a position to practically destroy Ruby's usefulness overnight by making frequent changes and deprecations, causing every installation to become a debugging nightmare and destroying millions of man-hours. To be sure, the emotional drama is boring, but the stakes are real.

</comment></comment><comment><USER11> rubygems doesn't need loren segal but it could use new leadership. It's great that Evan has stepped up but will it be permanent given he's already got a handful with rubinius?

<comment><USER2> Remains to be seen, I don't think evan has made a permanent commitment. But I believe that if anyone is best to handle whatever transition period is to come, it'd be him.

</comment></comment><comment><USER12> background, somebody? Who is Loren Segal?

<comment><USER13> Loren created YARD, which is easily the best Ruby documentation generator out there. His attention to detail and concern for release management is pretty much unparalleled within this community. He's also a recipient of a Ruby Hero award.

Full disclosure: Loren and I have collaborated on projects before. We co- authored the current version of rubydoc.info, the online doc host for Ruby gem and Github projects. So yes, I'm biased, but I've also seen the quality of his work first-hand.</comment></comment>


Why Are Homeowners Idiots? - <AUTHOR> http://www.fool.com/investing/general/2010/01/26/why-are-homeowners-idiots.aspx

<comment><USER3> One thing I don't feel the article addressed is that there is a range of being underwater, it's not binary. I bought after _most_ of the deflation of value had occurred, but not entirely. I'm about 3-5% underwater right now. But abandoning my house (even if I was not concerned about the ethics) would still be bad, because percentage fees on getting a new one would eat my "savings" entirely. To say nothing of the beating my credit rating would take.

To really make it worth walking away you really have to be underwater by a lot. I don't think that 100% of the people who are underwater are down by 30% or 40%. Real statistics on that would probably be more helpful.

<comment><USER4> Well, it's obviously true that it's not a step function. But the slope is _really_ steep. Someone with just a tiny bit of equity can sell their home and walk away without having to pay anything. Someone with just a tiny bit of unsecured debt who wants to move loses almost nothing (a beaten credit rating for someone with income isn't nearly as serious as you think) by walking away, and saves thousands of dollars in fees (typical real estate fees in the US are 5/6%, and paid by the seller!). That may not be "binary", but it's pretty close.

The real determining factor in your case, I suspect, isn't financial but one of convenience. Finding a new home is a hassle, and you don't want to bother with it. It makes more sense to stay where you are because moving doesn't get you anything but grief. But if you got a great job in a different city, would you _really_ be seriously thinking about trying to sell your underwater house?

<comment><USER5> "The real determining factor... isn't financial but one of convenience"

But convenience is financial as it can be valued. (My statements based upon extensive research involving 7-11 and getting food delivered)

</comment></comment></comment><comment><USER6> This article is remarkably oversimplified.

First, the obvious: once you ruin your credit rating by defaulting on your mortgage, it might not be so easy to just waltz right into a lower price rental. Not to mention that you'll be paying more on any other loans you take out for the next <strike>10</strike> 7 years, and probably your car insurance. You might also consider the increasingly common phenomenon of employers running credit checks on applicants.

There are a variety of legitimate factors in a decision like this which aren't purely financial: the time, emotional, and social costs of moving. Do you move your children to another school? Do you take your children away from their neighborhood friends? Perhaps you like your neighbors as well, or the neighborhood businesses you frequent. If you move into a rental, you can no longer make certain changes to your home to suit your needs and desires.

It's naive and insulting to call people "idiots" because they aren't simple money-maximizing machines, particularly if you're going to pretend that monthly housing cost is something that exists in a vacuum.

<comment><USER7> > _Not to mention that you'll be paying more on any other loans you take out > for the next 10 years [...]_

I thought that bankruptcy came off your credit score/rating/listing after 7 years.

<comment><USER8> It does. After 7 years a bankruptcy should not show up on your credit report.

<comment><USER9> it's 10

</comment></comment></comment></comment><comment><USER8> I generally agree with the sentiment that one is morally obligated to pay debts. This article makes a good argument that free markets don't work on morality, instead they are rooted in the assumption that everyone acts in their personal best interest.

Anytime I think about the morality of abandoning an underwater debt, I remember that $billion corporations do this every single day.

<comment><USER10> _This article makes a good argument that free markets don't work on morality, instead they are rooted in the assumption that everyone acts in their personal best interest._

I read it with just the opposite meaning. I understood it to say that the actual, observed behavior in the mortgage market is that howeowners are being moral. The Fools seem to question _why_ people would act following their morals rather than purely financials.

And this points to one of my favorite misunderstandings of economics, and one that I'm surprised an economist would fall for. Economics is NOT about just money. It's about why people make a choice for one thing, foregoing another. And it's all tied to what people _value_.

It seems to me that this article validates that people really do value behaving morally, having a clear conscience. And I'm glad, because I don't want to live in the world where people take advantage just because they can.

<comment><USER11> Homeowner's opinions will likely change if they begin to perceive their lenders as taking advantage of that morality.

<comment><USER12> Exactly, I'm all for acting morally and sticking to the spirit of an agreement even if I can screw my counterpart by abusing some loophole, but only as long as I feel my counterpart will do me the same courtesy. If I feel my bank is out to screw me and won't give me a break, then I'll have much less problem screwing them right back. If on the other hand I feel that my bank has treated me fairly in the past, and given me a break when they technically didn't have to, then I'd be far more willing to do the moral thing.

</comment></comment></comment></comment><comment><USER13> As a recently newly minted homeowner who paid appropriate price in a non- bubble market I find the title highly offensive and hyperbolic. "Why are underwater homeowners idiots" is the appropriate title.

Re: article itself.

There's also the small matter of jacking your credit for 7 years. With uncertain future and no savings many people rely on access to credit for emergencies. Not saying that is wise or that they should, but that is a fact.

<comment><USER14> Assuming you took out a mortgage, you are financing consumption by leveraging up. It's no different than buying a pack of beer on the pay-day-loan money. Not a financially smart move (unless your loan interest rates is below the long-term treasury rates).

<comment><USER13> house != pack of beer

tax deductions, appreciation, equity, income(it's a duplex and I rent 1/2), plus all sorts of small things such as reduced auto insurance as it's rolled into home owners insurance

</comment></comment></comment><comment><AUTHOR> Its not the morality but the expectation of the housing prices bouncing back to normal like the rest of the economy that is keeping them from walking away.

But the issue with realestate is that its not as agile a market as stocks or commodities. the volatility observed in a month in the stock market is probably going to be observed in a year in real estate market. And I am not not even talking about the phase lag but the different scales of variation between the 2 types of markets.

<comment><USER15> > Its not the morality but the expectation of the housing prices bouncing back > to normal like the rest of the economy that is keeping them from walking > away.

Then they could walk away, and buy a different (cheaper) house, or buy first then walk away.

<comment><AUTHOR> There is cost of walking away, damage to credit. So if they stay, assuming things will get better and they do, they keep their credit too.

</comment></comment></comment><comment><USER16> there may also be the issue of credit score. if you file for bankruptcy, it's harder to get a loan in the future. the prospect of future loans may be more valuable than the difference between what you owe the bank and the value of your house. that said, i suspect most people aren't thinking about this

<comment><USER8> This is an important point that I think supports the overarching message if this article and the Paulson quote. The system of credit reporting has been setup to support this "debt as a moral obligation" assumption. The fear of poor credit scares people into continuing to pay.

In reality, a bankruptcy only lasts 7 years on your credit report and most banks will start lending after merely 2-3 years.

Underwater homeowners should look at the longer time horizon and see that it will take quite a few years for their assets to be above water. That's several years to re-build their credit with a much lower cost of living.

<comment><USER9> It is 10 years and one can get an auto loan in less than a year if they understand how the mechanisms work. The over-reliance on credit score can be used to a bankruptcy filers advantage if they are careful. A bankruptcy usually take a 60 to 100 point hit on ones credit, not at all devastating. The problem is that most people wait to file after they have missed several payments which, each take a toll, on an individuals credit score. If one files at the first sign of trouble, can hold out making payments until the filing and immediately gets a secured credit card after the fact they can repair the damage in a little as a year. You will pay at least a point hire interest for the 10 years it is on your credit.

As well, with so much flight from underwater homes I would not be surprised to see the government enact some form of credit forgiveness once the wreckage is cleared and we are recovering. We have to get all of these consumers back to consuming or our consumer based economy will not survive. Both the corporations and the government are in favor of happy consumers who are pacified by their consumption so they will be extremely interested it lighting that economic "engine" again.

</comment></comment></comment><comment><USER17> It sounds like a small thing, but I'm glad just to see an article which doesn't just assume that people who are underwater were foolish or reckless buying a house in the first place. I bought well within what I could afford in 2001, and routinely paid down extra principal every month. Now that I am married and have a small child, I'd like to move someplace bigger, nicer, and closer to the rest of my family.

Only thing is, according to the real estate agents, if I'm really lucky selling my house will just cover what remains on the mortgage. If I'm not lucky, selling the house could easily cost us $20,000. Crazily, the most likely reason for that to happen wouldn't be that we couldn't find someone to buy the house for what we'd like to sell it for -- it would be that we couldn't find a lender to appraise it for that much.

Personally, I haven't sussed out the moral implications of just giving the bank the house instead of paying back the loan. On the one hand, it's hard to see how the bank could complain: yeah, they might be getting a house valued at $N in lieu of $N + $20,000, but they also got 8.5 years of interest on it, too, which probably amounted to around $45,000. On the other hand is the notion that implicit in our loan contract was the idea that we would pay it off if humanly possible; that allowed the bank to lend us the money for less than would have otherwise been possible. I don't know how to balance those two things.

<comment><USER8> In my opinion, you are the prime example of whom this article is discussing.

In my view, the bank will still profit off of your loan. If market value is about equal to what you owe, but it could only be reasonably sold for $20k but you have paid $45k in interest thus far, they still profit $25k from your loan. I have a hard time seeing where the bank could be morally right in damaging your credit for walking away...

</comment></comment><comment><USER18> Maybe people like the house they're living in? Everyone seems to be talking about the financial side of things, but isn't it likely that many of the people still paying their mortgage do so because they like where they're living and don't want to be foreclosed on?

<comment><USER19> But you're not going to be living there for the entirety of your 30-year mortgage in most cases. What happens when 5-6 years from now, you want to move, but you're underwater and can't pay off the mortgage by selling your house?

<comment><USER9> My personalty belief is that it will be 15 before prices recover to the peak in some areas, and if I where in a situation where I would need to relocate in five, I would take the hit now so that I would be on the road to recovery. Hell if most had did it in 06 they would most likely be able to get a mortgage (albeit at a higher interest rate) by now.

Specifically, Vegas, Arizona or Florida I would have had to do some soul searching , if I where not going to be there for over at least 10 years.

</comment></comment></comment><comment><USER20> Successful capitalistic democracy requires a moral foundation. Many things that are arguably "in the best interest" of an individual are not in the best interest of a functioning economy, and not honoring one's agreements is one of these. The fact that corporations are not being ethical does not justify on a moral basis the same behavior by anyone else.

Further, if the coming predictions of high inflation turn out to be correct, the people who are still holding their mortgages will be paying them back with cheap dollars vs. people who walk away from their current debts and then need to borrow again later.

<comment><USER9> > The fact that corporations are not being ethical does not justify on a moral > basis the same behavior by anyone else.

That is the beauty of Morals and ethics, is that groups of people subscribe to different ones just as you say it does not give them the right. Other subscribe to an-eye-for-an-eye morality.

I personally think that it does justify it, my moral compass says that if a cooperation is abusing the people via deception, unethical and immoral behavior then that corporation should be dissolved and all debts to that corporation should be terminated. covering it up their appalling nature with a double ethical standard just emboldens more corporations to engage in unethical behavior and allows more abuse of the people.

Let me be clear, I am not anti-corporation, i am just anti-double standard.

</comment></comment><comment><USER21> One issue the article ignores is the damage to your credit. I would assume that having a foreclosure on your record would make it very difficult to get credit at a reasonable interest rate in the future, and that some of the people who continue to pay on a nonrecourse mortgage are accounting for the effect on the price of debt they may wish to incur in the future. I expect that this factor is ignored by economists because it is difficult to quantify.

<comment><AUTHOR> If there was someway to manipulate the way credit is damaged by looking at individuals so that only sub-prime borrowers are punished - that would be a possible solution. Let the responsible buyers walk away without penalty. But I understand that this has a potential for regime change and is far fetched in our situation.

<comment><USER21> From the perspective of lenders, who are the people that credit scores are supposed to serve, this would be counter productive. Anyone who fails to pay a debt, for whatever reason, should be penalized. For large lenders, the underwriting decision is now almost entirely statistical, which provides them with lots of operational leverage (but is also one of the reasons that the bubble was allowed to inflate in the first place). If you want someone to make an actual underwriting decision, you need to go to a smaller bank or credit union. You will also find that many of these institutions weren't hit as hard because they made better decisions about what loans to make, and they sold off the poor quality loans that the government forced them make to the secondary market to avoid the hit when they went bad.

</comment></comment></comment><comment><USER22> While reading this article, I felt there was as strong connection to this one (recently posted on hacker news):

[http://www.economist.com/sciencetechnology/displayStory.cfm?...](http://www.economist.com/sciencetechnology/displayStory.cfm?story_id=15328544)

...which basically says that entitled people in positions of power tend to hold others to a higher moral standard than themselves.

</comment><comment><USER23> This is how societies break down.

An example is set at the top, by those in power, that self-dealing and self- interest above all ethical standards is standard operating procedure. Eventually this moral decay 'trickles-down' and people start to realize that they are chumps if they don't start playing by the same rules.

<comment><USER7> The problem is that they _are_ chumps if they don't play by the same rules. Which is why the people 'at the top' really need to be used as an example of _not_ acting in such as self-interested way. If the people at the bottom are keeping society together by ignoring the example set at the top, then the people at the top are just plowing over everyone else in a bid to further their own selfish goals.

<comment><USER24> Agreed. Either the common man should play by the same rules, or he needs to fight to enforce that those at the top don't get to cheat either. Otherwise he is basically a "chump."

</comment></comment></comment><comment><USER25> The Motley Fool seems to have forgotten this, but rational-agent theory is a useful fiction, not a statement of reality. The best analogy I can think of is Skinner's behaviorism; rational-agent theory seems to fail in the same kinds of places as behaviorism does, too.

Look up the "Ultimatum Game" for a particularly effective demonstration of where it fails -- and the commenter here who points out that rational-agent theory would destroy civilizations is completely correct. (Mental exercise: apply "the tragedy of the commons" to a defensive war.)

</comment><comment><USER26> It's interesting to see the norm asymmetry (i.e. homeowners should just sit and take it) playing out in the Fool comments.

</comment><comment><USER27> Why Are People Who Pay For Porn Idiots? Why Are People Who Pay For Music Idiots? Why Are People Who Don't Sell Drugs To Make Lots Of Money Idiots?

Because some of us have pride and morals.

<comment><USER7> It's not like walking away from a mortgage gets you off scot-free. The entire point of a mortgage is that it's a contract. If walking away from the contract and enduring the penalties associated with doing so is less financial pain than keeping with the contract, then why not?

It's not like these 'underwater' people are going to immediately move to some island in the Caribbean with bags full of money and sit on the beach in the sun living the good life until the end of their days while the poor, sickly bank dies alone and impoverished in a gutter somewhere.

<comment><USER27> Yes, all technically true, but some people have pride or ethics issues with breaking contracts (social contracts being an even stronger example than mortgages..).

</comment></comment></comment><comment><USER28> "And let me emphasize, any homeowner who can afford his mortgage payment but chooses to walk away from an underwater property is simply a speculator -- and one who is not honoring his obligations." - <USER2>

Every time these GoldmanSachs critters open their mouth is yet another oblique reminder that the masses are brain dead.

<comment><USER8> "Do as I say, not as I do." comes to mind.

<comment><USER29> Has Goldman Sachs ever missed an interest payment or otherwise failed to met a financial obligation?

The ire in Paulson's quote is directed not against speculators generally, but speculators who don't live up to their agreements when things move against them.

That's not really something Goldman is guilty of. ...As much as people would like them and everyone ever associated with them to be guilty of everything.

<comment><USER30> _Has Goldman Sachs ever missed an interest payment or otherwise failed to met a financial obligation?_

I'd give Goldman a pass. They really are the best at what they do.

But if we expand it further to the rest of the financial industry, what can we see?

Back in November, 33 companies skipped their TARP payments.

Just recently, Blackrock walked away from a Manhattan building as they couldn't refinance the debt.

And that's the problem-- banks and homeowners get into financial, not moral contracts. If the loss off default is smaller than the loss of staying in the contract, you stop paying. Companies do it all the time, and homeowners should view it as an out.

<comment><USER31> "...any homeowner _who can afford_ his mortgage payment but chooses to walk away..."

"Just recently, Blackrock walked away from a Manhattan building as they _couldn't refinance_ the debt."

Were the companies which skipped their TARP payments capable of paying?

There is a difference between being unable and unwilling to pay.

<comment><USER32> "As of 30 September 2009, BlackRock's assets under management totaled US$3.2 trillion across equity, fixed income, cash management, alternative investment and real estate strategies"

Sounds like unwilling to me. Just because they couldn't refinance that debt doesn't mean they are unable to pay it.

<comment><USER31> I'm not sure why you believe Blackrock can divert assets from one use to another.

For instance, if Blackrock manages two pension funds (e.g., Target Retirement 2050 and 2040), they can't raid TR2050 to pay for obligations owed by TR2040.

</comment></comment></comment></comment></comment></comment></comment><comment><USER33> Can you put a [US] tag in the title. It's not really relevant in other countries.

Also a _slightly_ less inflammatory hyperbolic linkbait title would be good.</comment>


Uber self-driving car crashes into another car in Pittsburgh - <AUTHOR> https://arstechnica.com/cars/2018/03/uber-self-driving-car-crashes-into-another-car-in-pittsburgh/ <comment><USER2> I don't want to get into the particulars of this single wreck.

But it does make me think that we're going to need some new laws as we adapt to a mixed use on the roads:

1\. The self-driving car & its operating company must retain all sensor and video data. No "oops we lost it" when going to court.

2\. There has to be some way for the human driver to know what legal entity is operating the car. It's pretty easy to imagine driverless hit-and-run accidents.

3\. Human drivers have to be able to get insurance information from the automated vehicle. (I have no idea how! But humans are able to work out an ad- hoc protocol to exchange insurance info on the spot. Automated vehicles would need to have something predefined.)

Basically, _when_ an accident occurs, the human and the human's insurance company has to have some way to connect with the insurance company of the automated car and its operator.

<comment><USER3> #2 and #3 can be resolved, in the worst case, by existing public ownership and insurance registries and making any collision involving a self-driven vehicle without a human representative of the owner who can provide registration & insurance info require police response and identification of that information based on license and/or VIN. (As this potentially increases public expense for that mode of operation, licensing for it may be more expensive.)

</comment></comment><comment><USER4> While it sounds like the human driver was likely at fault in this situation I wonder if she made eye contact with the self-driving car's "safety driver" before the collision. If she assumed he was operating the vehicle and could clearly see her she would have expected him to slow down. This is the cultural birthplace of the _Pittsburgh Left_ , after all.

<comment><USER5> After reading up on the _Pittsburgh Left_ , that needs to be eliminated from driving culture ASAP. If there are intersections that require it, simply add a protected left.

<comment><USER6> In most of the regions where the Pittsburgh Left is common (I grew up in Massachusetts, and thought it was just how you drive until I moved out to California), adding a protected left is not feasible. The roads are single- lane, barely the width of a single car, and property rights extend right up to the side of the road. (Similarly, in many cases sidewalks are infeasible because there's always some homeowner along the road who refuses to cede their land.) The properties themselves are usually residential, and there will be hundreds of them alongside the road.

It's very different from the 3-lane boulevards with wide setbacks, protected turn lanes, and commercial zones all owned by the same developer that you'd find in the West or South. The roads in the Northeast U.S. are former cow paths, and they are about as wide as you would expect a horse-drawn wagon to be. (They also don't form any sort of grid system and frequently meet at 5- or 6-way intersections, which is a whole other issue.)

</comment></comment></comment><comment><USER7> I don't know what the law says about this in the US, but when I was taught to drive (in the UK), I was told not to assume that someone signalling would actually do what was they were indicating, and that I would be responsible for whatever happened if I took action in reliance of that signal.

Not sure if that's the law in the UK, or just my instructor teaching me to drive defensively.

<comment><USER8> I used to get people trying to trick me into turning in front of them all the time in the company car for the last company I worked for.

Usually go like;

Me: making right turn out of a parking lot see a car with their blinker on presumably turning into the place I'm leaving so I creep forwards a few feet.

Other car: sees me creeping forwards and think I'm going to turn in front of them so floors it.

Happened so many times I don't even move until they're already halfway turned.

My favorite one;

Me: making a left turn onto a main street Other car: making a left turn onto the side street I'm on

Other car: waves me out

Me: just looks at him

Other car: backs up a bit and waves me out

Me: just looks at him

Other car: backs up a bit more and waves me out

Me: "I see where this is going..."

Other car: puts it into reverse to continue the dance

Me: floors it as soon as they shift into reverse

Other car: puts it into drive as fast as they can and tries to ram me

A prius is a lot quicker than people think...dude's lucky I was in the company car because I'd have gotten out at the next light and slashed their tires if someone did that to me in my personal vehicle -- can't really do that in a car with the company phone # on the side in big lettering.

<comment><USER9> I think I'm missing something, why were you being targeted by these people?

<comment><USER10> Insurance fraud. Fleet vehicles and taxis have high insurance requirements and people can get payouts.

I've seen videos of people putting their car into reverse to force a rear end collision to make it look like the driver behind is at fault.

<comment><USER11> Cars have 30sec black boxes.. I think that should cover this scenario as do dash cams.

</comment></comment></comment></comment></comment><comment><USER8> Yep, if you make a left turn in front of oncoming traffic it's pretty much always your fault even if the robot was driving the other car.

Though, in this case, it's probably cheaper for Uber to fix the other car than pay all the lawyer fees because you _know_ there's going to be lawyers involved.

<comment><USER12> The damage was on the front-right bumper of the left-turning car. The only way I can see the left-turning car being at fault is if the left-turning car was in the leftmost lane, and the right-turning car tried to merge into the leftmost lane as well (rather than the closest lane as required)

<comment><USER13> There was no right-turning car. The uber car was going straight. The woman in the other car (making the left turn) argued they had their right signal on, but it's not apparent if there's any evidence to corroborate that. Uber has stated that the car's _left_ turn signal was on to indicate an upcoming lane change

</comment></comment></comment><comment><USER14> According to the article this was a 4 lane road, and she was in the furthest lane to the left of the Uber driver. The Uber driver was in furthest right lane, with a left turn signal on, preparing to change lanes.

So, she cut across two lanes to crash into oncoming traffic. I'm not sure of the Pittsburgh driving laws, but generally you're supposed to get into your left-most lane before taking a left.

I don't think she has a hope in court, especially since Uber definitely has high quality records of everything that occurred.

<comment><USER3> > According to the article this was a 4 lane road, and she was in the furthest > lane to the left of the Uber driver.

No, she was turning left from a perpendicular street, from the leftmost lane in her original direction of travel into the rightmost lane in the new direction of travel. Pop

> The Uber driver was in furthest right lane, with a left turn signal on, > preparing to change lanes.

The last part is a disputed claim, per the article.

> So, she cut across two lanes to crash into oncoming traffic

I'm not sure how you figure that; she ran into crossing (not oncoming) traffic, and I don't see any way of counting where it works out to cutting across two lanes.

> I'm not sure of the Pittsburgh driving laws, but generally you're supposed > to get into your left-most lane before taking a left.

She was making a left turn from the leftmost lane; that's not in dispute.

> I don't think she has a hope in court

I don't either, but that's because making a car making a left into crossing traffic, unless the crossing traffic is violating a control (stop sign, signal, etc.) or speeding, is almost always at fault because of right-of-way

<comment><USER14> You might be right, I was only going off what I could glean from the article, which may have been misleading.

From the article: "McLemore was on a four-lane road called Liberty Avenue, heading Northeast, while the Uber vehicle was approaching from the opposite direction."

This description, led me to believe, they were on the same road approaching each other from opposite directions. As you can't really be going in opposite directions unless you're on the same road, or a parallel road.

If that's not the case, I guess the direction they're referring to is the direction in which she was turning to go?

Also from the article: "'I was not expecting someone to turn from the far left lane into my lane,' the Uber safety driver said."

Based on my understanding of the cars heading in opposite directions, I assumed he was referring to the lane furthest to his left. And he's claiming he was about to change lanes to the left, which would place him in the furthest right lane and her in the furthest left lane.

I had assumed that she tried to turn left at the intersection, from the wrong lane, and hit the car in the process.

</comment></comment></comment><comment><USER15> Later in the story:

"The Cruise car had tried to change lanes, then abruptly aborted the lane change when the space to make the change disappeared"

This sounds a lot like a Google crash in Mountain View awhile back.

<comment><USER16> Yeah I've been around enough self driving cars to know that they behave a little weirdly sometimes, in a way you'd never expect a human to. We can keep throwing humans under the bus on some technicality every time this happens because we're engineers and beep boop everything is black and white. period. But in reality there's a social aspect to driving with a lot of unwritten rules that people do not seem to be worrying about as much as they should.</comment></comment>


Tether Launches HTML5-Based iPhone Tethering Solution - <AUTHOR> http://www.macrumors.com/2012/03/09/tether-launches-html5-based-iphone-tethering-solution/

<comment><USER2> This is based on speculation and guesswork ... but this is what I think they were doing with their original iTether application:

On the client (the Mac) they have a IOKit ethernet driver that shows up in Network Settings. This becomes your default route (after some fake DHCP magic) and then captures packets and relays them to their application that runs in userland.

Their userland application contains a lightweight TCP/IP stack that interprets those packets. (For example <http://www.sics.se/~adam/lwip/>)

The lightweight TCP/IP stack contains unimplemented callbacks for opening/closing sending/receiving data. In this case those callbacks are implemented as a higher level network protocol.

That 'wrapped' TCP/IP protocol is then relayed to the iPhone via the usbmux protocol. This allows you to map a TCP/IP service on the device to a local port on the Mac. (I happen to have written a nice usbmux proxy three years ago)

So now the wrapped TCP/IP is arriving at the iPhone, in the form of higher level 'network stack commands'. The iPhone app now simply has to interpret these commands and translate them into real socket open/close read/write commands.

At this point packets are flowing through a fake Ethernet device driver to a secondary TCP/IP stack, over a USB cable to an iOS app which will do actual socket calls and talk to the real network.

Soooo, my guess is that for this new app they use basically the same setup except that the iOS app is gone and replaced with a simple web page with web sockets that point to both that fake TCP/IP stack on the mac and to a hosted proxy service on their end. Relaying data back and forth.

Crazy hack. Amazing it works :-)

<comment><USER3> Maybe it is just my warped perspective, but when I looked at the technology this all came to mind immediately, but I just as immediately dismissed it because of the "hosted proxy service": the fee was seemingly "too low".

So, I feel like you've left out the key non-obvious part: it turns out that even if you do the brain-dead un-optimized "let's use Amazon EC2" for your proxies, $30/yr at $0.05c/GB (down: up is free) buys 50GB/mo.

Given that the user is then going to be filing this data over their 3G connections, 50GB/mo is (based on reports of users tethering that complain about rate limiting and caps) at the very high-end of usage.

So, with that aside, the rest of this actually boils down to: "the webpage just makes two outgoing websocket connections; one to a proxy, and the other to an app on the PC, itself providing a custom network driver".

</comment></comment><comment><USER4> Hey guys. I'm the developer behind this tech.

Glad to see it's got you thinking :). It took a lot of brainstorming and testing/debugging to get this up and running.

Hope you enjoy it!

<comment><USER5> It did get me and I'm sure a lot of other people thinking. Would you mind answering this Quora question that I set up so I can sleep tonight?

<http://www.quora.com/How-does-the-Tether-HTML5-app-work>

<comment><USER4> I can't really go into much more detail than the first responder did without getting into trouble :)

Let's just say it's magic.

<comment><USER6> If that's how it works it means that all my data is going through your proxy server. Is that correct? Is the connection encrypted?

<comment><USER4> Yes we have proxy servers. And yes the connection is encrypted

<comment><USER7> What's to stop the carriers from simply blocking (or throttling) your proxy servers? Or conversely, simply detecting which customers connect to your proxy servers and automatically charging them for tethering (as they've already done in other cases).

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> Ok so I went ahead and bought the service. Here's what I found out: You'll have to keep the tether client application running on your Mac or PC. So not gonna work for wifi-only iPads. Then you will need to keep the html5 webpage open in order to receive data. They instruct you to set iPhone's screen lock to "never" so it doesn't automatically shuts the web page down in 1 minute or so. So I imagine you can't take phone calls when tethering as the webpage will go offline.

Pricing wise, the first year costs $15 and will be $30 from second year on. They set my paypal up for recurring payment.

Performance wise it's pretty fast on my iPhone 4. Setting up took about 2~3 min, very easy to do. The html5 app needs to connect to both the tether website and the client computer. Took me a few tries to connect to both but once they are connected the speed is pretty comparable to tetherme in jailbroken iPhones.

<comment><USER8> >So not gonna work for wifi-only iPads

Excuse my ignorance of Apple products but how can tethering work on a device without a internet connection ? You want to go trough a iPad proxy to get to a WiFi connection ? Why not just connect to WiFi with the PC ?

<comment><USER9> You could want to use the iPad as the client. Ie use an iPhone to give internet connection to the iPad. (I guess that what the GP meant)

<comment><USER4> Yeah, we almost have this working an know there is a huge demand for it. Still a few technical hurdles to solve though.

</comment></comment></comment></comment><comment><USER10> Wow. Cool hack.

But if you're friends with an iOS developer, you can ask him or her to build an ad-hoc copy of iProxy for your iPhone and it won't cost you anything.

(Or get 100 of your closest iPhone-using friends to pitch in on an iOS developer account)

<https://github.com/tcurdt/iProxy/wiki>

<comment><USER2> Or jailbreak your phone and re-enable tethering.

<comment><USER10> Nah.

</comment></comment></comment><comment><USER9> The way they do it is elegant, and could be used in many other places than just the iPhone. All you need is a browser that supports websockets.

I'm not really aware of that stuff, but I'm a bit curious. Do websockets really work over mobile networks (which are, at least in my experience, transparent proxied, and where anything outside of HTTP-on-port-80/HTTPS-on- port-443 is blacklisted into oblivion) ?

<comment><USER3> My experience is the exact opposite: all networks I've used in the US (Sprint, Verizon, AT&T, and T-Mobile; in essence, all of the major ones) and the few I've used in the UK (while roaming) have all had sufficiently few outgoing ports blocked that I've never run into one (and I use my iPhone as if it were a computer ;P). That said, WebSockets is just an upgrade extension to HTTP, so it is going to go over 80/443 anyway.

<comment><USER11> Same experience here. I use SSH over a wide variety of ports, and never had it blocked by 3G before...

</comment></comment></comment><comment><USER12> Do US carriers really still restrict tethering? That's really a shame, because the iPhone's built in tethering support is very good, and extremely elegant compared to apps and methods like this one...

<comment><USER13> I found the exact same thing, especially since they (finally) implemented the Access Point "tethering", it drains more battery but is incredibly convenient and simple to setup.

Once upon a time, I used the very first iPhone proxy application (NetShare), it was significantly more fiddly than native support. And of course you couldn't use the phone while it proxied, that's not an issue with native support.

</comment></comment><comment><USER14> For a company that will be handling all of my web browsing, I would have expected them to not store my password in clear text.

Doesn't inspire confidence :(

Great product idea though!

<comment><USER15> Disclaimer (I have not tried the new one) How do you know they store it in clear text? Have you seen inside their database? I mean they could be accepting the password in clear text but maybe they run it though a MD5/Sh1/Salt process before it actually gets to the database.

</comment></comment><comment><USER16> How! That's what I really want to know. Streaming sockets?

<comment><USER17> Would everything have to go through their servers? I can't imagine that HTML5 apps on iOS have permission to open enough sockets to avoid that.

<comment><USER5> If everything has to go through their servers and then downloaded by the Mac/PC, then it basically defeats the whole purpose of tethering.

The real trick is that they found a way to pipe data from the iPhone to the Mac without going through the internet, all using a good ol' browser web page.

<comment><USER18> The question is how does the data get to the iPhone, and yes, it appears it all goes through their servers.

</comment></comment></comment></comment><comment><USER19> Looks like a great service, unfortunate that they're subject to the HTML5/browser limitations (can't lock, etc).

Is there another way to distribute their native version besides through the app store?

My company use TestFlight (<https://testflightapp.com/>) for iOS game development. Is there anything similar, but better suited to end-user distribution?

</comment><comment><USER20> More fundamental than the "do they use websockets" question is "what is the multihoming behavior of iOS?"

Sockets alone are not enough -- you need cooperation from the OS to route connections over both wifi and cell data links in the desired fashion.

In this case we can infer it's two connections made by a script running on a web page: one with the "tethered" machine (over wifi) and one with Tether's proxy server (over cell data). The proxy server works in concert with a client on the tethered machine, and the script just relays data between those two connections.

The interesting thing is that iOS permits a single web page to connect over both network links simultaneously. I'm no expert but that seems like something Apple could, and would, kill with an update.

Really clever hack, though.

</comment><comment><USER21> I feel like this is not so hard to do with NodeJS and Web sockets.

Small NodeJS app that serves the client connection webpage and acts as a proxy. Set the proxy locally, When you get requests instead of fetching them ask the socket for the data and headers.

On the client just do an XMLHttpRequest for whatever and shove it back down the web socket to the proxy server. Done, Right? I'll do a little experiment when i have time...

</comment><comment><USER22> This is so cool! Like to see that even though they were rejected from the app store they still went ahead and found a way to make their idea a reality.

</comment><comment><USER23> Too bad Android does not have any visible plans to implement WebSocket (which is now RFC 6455). Perhaps the development of HTML5 apps on Android has lower priority for Google than for Apple, to force the development effort into native, which they can curate and control. This hypothesis is also corroborated by comparing HTML5 performance in Android and in iOS (Android is usually 300-500% slower).

<comment><USER24> chrome for android supports websockets.

<comment><USER23> Only on 4.0: it represents less than 1.5% of all Androids now. iOS had Websockets since 4.1, for over 1.5 years. Unless Chrome gets back-ported to Android 2.2 and 2.3 it will take a very long time.

<comment><USER25> I thought 4.0 was supposed to stop that? iOS 5.1 runs on every iOS device released in the last 3 years. When can we expect all Android devices released in the past 2-3 years running the latest OS?

<comment><USER24> when the carriers and handset manufacturers pull their collective thumbs out of their asses.

<comment><USER26> Is that what had to happen for Apple to do it? I thought Android was on the same carriers?

<comment><USER24> god dammit, why does everything have to be an apple/android battle? can we not complain about the deficiencies of android without some smug apple fanboys chiming in? yes, apple is better at pushing out software updates than android is. that's not relevant to a discussion on where we can and can't use websockets. now go away.

<comment><USER26> Just trying to lay the blame where it belongs, on Google and the Android ecosystem. You'd have your websockets if Google did the right thing and enforced updates. Has nothing at all to do with the carriers .

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER27> Very cool! Too bad the iphone can't lock, and that the wifi-only iPad can't benefit from this.

On a side note, UI related, when I am on this page: <http://tether.com/iphone/> and click "Order Now" at the top right, the modal window opens behind the YouTube video.

<comment><USER4> Thanks, I'll get our web dev guy to look into that.

</comment></comment><comment><USER28> Interesting concept... Thinking about it, they are making Safari act as the proxy/gateway. I did not dig into it but are they using web socket for achieving that? I can see their desktop app, sending the request/proxying to Safari which will in turns act the gateway to the net. Neat.

</comment><comment><USER29> This sounds awesome, but please don't send my password back over email.

</comment><comment><USER30> I don't understand how this works. It seems like when you're connected to the ad-hoc wifi network, all web requests would go through there. How do they get around this?

<comment><USER31> I'm assuming they're making use of the fact that the iPhone is multihomed when wifi and cellular connections are both enabled. This means that any outboard traffic from iOS _could_ take two routes, but the ad-hoc wifi network is only advertising routes to IP addresses in a (predetermined) private address space. So when the websockets app talks to a private IP address it choses the wifi route and when it talks to a public IP address it choses the cellular route.

<http://en.wikipedia.org/wiki/Multihoming>

</comment></comment><comment><USER32> Why must I sign up in order to find out how much it cost?

<comment><USER4> That's a good question. We'll change that.

</comment></comment><comment><USER33> Can we expect any way to tether a Wifi-only iPad or iPod touch to this service in future?</comment>


Leaf POS - Increase in smartphone usage vs tablet and desktop - <AUTHOR> http://leaf.me/blog/mobile-is-the-future-and-the-future-is-here-part-2.html?utm_source=Leaf+SMB+Blog&utm_medium=Twitter&utm_campaign=Leaf+Twitter

<comment><USER2> I think it's pretty sweet to see your work on responsive design doing well. People put a lot of work in things like responsiveness and UI design and most of the time don't get to see any data supporting their hard work.</comment>