Luna: Visual and textual functional programming language - <AUTHOR> http://www.luna-lang.org/ <comment><USER3> Landing pages with signup forms aren't a great fit for Hacker News. It would be better to post and discuss this once it's out.

<comment><AUTHOR> Sorry - I was curious what the HN bunch would tell about this. But you are right - there is not enough information right now for any deep comments. The examples so far are too simple.

</comment></comment><comment><USER4> It seems a bit strange to me that they would take the directed acyclical graph interface of a compositing program (like Nuke as one example) and call it a general purpose language, then show it off by doing compositing image operations. If you want to work with images like this, download Nuke, if you want to work with images, geometry and more like this, download Houdini.

There is a lot to be gained from structures like this in general programming, but what they are showing has already been done for 20 years. The real test is when you get in to branching, loops, and all sorts of things that aren't straight data flow. Whether people realize it or not, pure data flow is basically a solved problem, even from an interface view, it just isn't evenly distributed.

<comment><USER5> Hello! I'm one of the guys behind Luna. You might be right, that the first example on the website should not be connected to image processing, because it could make the reader biased. In fact any example could affect the reader in the same way. You can observe "branching" and some kind of "folds" in the second example on the website. There are no loops in Luna, because it's purelly functional language and everything can be done simply by recurrence or by using "fold" or "map" operations. As a side note - there is a startup using Luna as a core engine for image processing (flowbox.io) and a lot of movie studios around the world are testing it right now because it gives much greater power than Nuke's graphical representation. On the other hand there is a topic on sidefx forum (makers of Houdini) about incorporating Luna to Houdini to increase its power. Luna is above these domain specific use cases.

I think the most important thing here is that although VPL was introduced many years ago (like textual programming), Luna is the first language that allows switching between code and graphs on demand.

<comment><USER4> I think what you guys are doing is very interesting and I think in some ways you are on the right track, however:

> You can observe "branching" and some kind of "folds" in the second example > on the website.

That is a static branch hardcoded from the GUI. That isn't branching because nothing is switching the boolean, which comes back to question of how you would switch the boolean in this structure.

> a lot of movie studios around the world are testing it right now because it > gives much greater power than Nuke's graphical representation

This is a bold claim that I'm very skeptical of and my initial reaction is that this seems like a bit of a bluff. What studios are using it and what exactly are the benefits over Nuke that you're talking about?

> Luna is the first language that allows switching between code and graphs on > demand.

This is far from true of course. Compositing program's file formats are essentially data flow scripting languages and Houdini's shading language allows you to look at the shader text while modifying it through a node graph.

It really does seem cool but your claims are pretty bold. If you can show off a general purpose program written like this, something that would typically be done imperatively, then that would be much more of step forward from what has been done before.

<comment><USER5> Thank you for your reply!

> That is a static branch hardcoded from the GUI. That isn't branching because > nothing is switching the boolean, which comes back to question of how you > would switch the boolean in this structure.

Of course. Such static, GUI hardcoded switching is a very common one when testing / prototyping solutions, but of course it gets finally parametrized by some runtime variable. The dynamic branching looks very similar, with another input connected to the switch. This additional input has a Boolean type and triggers the switch between using the first and the second input.

> This is a bold claim that I'm very skeptical of and my initial reaction is > that this seems like a bit of a bluff. What studios are using it and what > exactly are the benefits over Nuke that you're talking about?

I cannot provide any further information regarding Flowbox, but you can freely ask them about it. We can freely discuss Luna though. Why its superior over the graphs representations shipped with Nuke or Houdini? In contrast to those representations Luna is a _real_ programming language, that allows you to process any kind of data, not only images or 3D geometry. It can access all system level properties (like disk or network operations). You can also define your own data structures. Moreover Luna compiles to native code, so there is no runtime overhead that comes from graph interpretation. I think that those are just few of very important differences here.

> This is far from true of course. Compositing program's file formats are > essentially data flow scripting languages and Houdini's shading language > allows you to look at the shader text while modifying it through a node > graph.

I was using Houdini for years and I know it really well. Houdini allows for conversion between VOPs and VEX (graphs and imperative code) but not vice versa. You'll not be able to modify text and get graphical representation again.

</comment></comment></comment></comment><comment><USER6> Well, I've been programming for 20+ years across dozens of languages, and I can't understand what a single one of those diagrams is actually doing.

But I can grok the "textual code" example almost instantly, so fast that the difference in effort is almost laughable. I find the mental overhead in understanding the diagrams vs. "textual code" (that phrase makes me mentally chuckle each time I read it) is orders of magnitude higher. Sorry, but I simply don't buy what they're selling ( _and I say this as someone who lives and dies by the whiteboard_ ).

About the only thing out of this that looks actually useful for real-world software engineering is the visual profiling piece. If I were them, I'd probably throw out everything else they are working on and focus on that single piece alone, because that could be pretty useful.

<comment><USER7> As you said, you have been programming for 20 years, therefore you likely have built a lot of experience and innate skills for dealing with text and considerably less for dealing with diagrams.

I don't think this tells anything whether someone with the same amount of experience in diagrams might be able to make more of it than you with the equivalent text representation.

<comment><USER8> For what it's worth, mathematicians work on paper so they aren't constrained by anything, but they still use textual nested syntax instead of visual dataflow graphs.

<comment><USER9> That's a completely false analogy. We rely on text to represent what's best written as text. When you want to speak of a specific automaton or graph, you'll give a figure, unless the mathematical structure is really big (infinite maybe) and thus best described intentionally.

Frege's notation is another example, although it was a bit idiosyncratic, but its legacy very much lives in proof theory.

And then there are string diagrams, proof nets, ...

Do you know anybody doing maths who could say "well I've never felt the need to use a figure in my life"?

<comment><USER10> > We rely on text to represent what's best written as text.

Yes exactly. And if you look at the common methods for how knowledge is represented, in mathematics or any field really, it's very roughly around 80% knowledge as text and 20% graphs/diagrams/figures.

An image can be extremely helpful and illustrative if appropriate. But almost nowhere do you see people communicate primarily with images.

Text is king. I think if the programming environment doesn't embrace text as the primary input method, then it's not really good as a general-purpose environment; it'll only be successful in niches.

<comment><USER7> > _But almost nowhere do you see people communicate primarily with images._

I'm not quite sure how humans _could_ communicate primarily with images, at least until neural interfaces are in widespread use... I would argue that, yes, we communicate primarily with text, because we have the innate skill - speech - to do so efficiently and we have no equivalent skill for images. This doesn't tell anything about how knowledge would be best expressed in theory.

> _And if you look at the common methods for how knowledge is represented, in > [...] any field, it 's very roughly around 80% knowledge as text and 20% > graphs/diagrams/figures._

Sources, please. But even assuming this is true, this would leave 20% which are better represented visually. And I believe it's a worthwhile goal to integrate visualisations for those 20%. An integration like this seems possible with Luna's approach of offering both, a text and a visual representation.

> _Text is king. I think if the programming environment doesn 't embrace text > as the primary input method, then it's not really good as a general-purpose > environment_

I agree with you that it's a good idea to have _some_ textual representation - If for nothing else so you can use existing tools. But that seems to be exactly what Luna is going for, if I understand the site correctly.

I don't see why text has to be the _primary_ input method.

<comment><USER10> > But that seems to be exactly what Luna is going for, if I understand the > site correctly.

Yeah, I'm withholding judgement on Luna specifically, until we can see it in action. Their model could be a good one, it all depends on whether they treat the text representation as a first class citizen or not.

<comment><USER5> Paul we do treat BOTH text and visual graphs as first class citizens. Luna's compiler is all about AST modification. In fact Luna provides few different AST models, the most important are:

1) Standard AST - one that is a common and extendible syntax representation. Both the textual code as well as visual graphs are able to translate to and from this AST model. To be most precise - both representations are just some kind plug-ins (with some funny type-level-safety built-in) over this AST representation, so they are both first class citizens and they are completely equal to each other.

2) Core AST - a desugared, type-checked, minimal lambda calculus language, that is used to perform all sort of optimizations before next steps towards generating the target code (assembly / js).

We treat the graphical interface exactly the same way, never favoriting any representation over the other. If you would like to develop another one, like natural language input, you have just to provide methods for translating it to and from AST and our infrastructure delivers everything you need to translate it to and from visual or textual one.

I hope this spots a light over the internal design of Luna :)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> This looks too good to be true.

I always thought there should be a graphical language to do the high level architecture.. And a text representation to do the details. But it should be the SAME language.

Not like CASE tools where the uml diagrams are different than the code.

'The good thing about bubbles and arrows, as opposed to programs, is that they never crash.' — Bertrand Meyer

Now in visual languages.. The bubbles do crash.

I'd love to learn more.

<comment><USER5> Hello! I'm one of the foudners of New Byte Order (the company behind Luna). We think the same - the visual representation is natural for high level abstraction model, while textual code fits really well when dealing with low- level stuff. And Luna is one language with both of these representations. If you want to learn more and have any specific questions, I would love to answer them.

<comment><USER12> "Luna is the world's first programming language featuring two exchangeable representations: textual and visual, which you can freely switch at any time."

I have not made an extensive research, but this doesn't sound right to me. The SAS Enterprise Guide version of the SAS language came first (and probably others). In one panel you have the visual version while the other has the traditional SAS text language. There are other environments live Learntomod where one panel shows Javascript while the other has a visual, Scratch-like representation of the same code. Just like Luna, they consist of an IDE coupled with two languages each: the visual and the textual. Why is that they don't make that argument false?

<comment><USER5> I would love to be proven that I'm wrong, but I don't think they allow for bidirectional, lossless conversion, namely graph -> text and text -> graph? Do they? If so, then you are right, the statement is wrong and we will change it on our website.

</comment></comment></comment></comment><comment><USER13> Great idea. _Looks_ promising.

Questions:

* The website states that a compiler and an interpreter will be open-sourced, but this language probably requires some kind of "graph IDE" as well. Will that tool be open-sourced too?

* Are the authors trying to make money from this? How?

* Who is behind this?

<comment><USER14> For what the site says, there must be lot of infrastructure needed to run and profile a program.

Will that distributed runtime be open sourced as well?

<comment><USER5> The only infrastructure needed for running Luna on your hardware is the compiler. If you want interactive mode with interactive visual development you will need also Luna interactive interpreter and visual environment. Both compiler as well as interpreter are going to be Open Source, while the visual IDE will be free (and we consider releasing it as Open Source too). There is nothing more that you need here :)

</comment></comment></comment><comment><USER15> Without an equally elegant/powerful test framework, this is just child's play.

If the concept allows, as some have mentioned, to let non-programmers make changes, then a fully-integrated test framework is absolutely required.

Other questions come to mind:

\- How are global 'variables' (config, settings, etc.) represented? As more lines, or traditional named variables?

\- Although the Category Oriented Programming seems compelling, I'm not seeing how this visual world will address concurrency in any meaningful way (maybe I'm missing something) - although the profiler is nice.

\- Visual programming is also extremely messy when dealing with exceptions: not sure how that is addressed here - again more lines?

Before long you end up with spaghetti... but perhaps they've solved that via views / layers or something.

I highly applaud this effort, but it needs to address the complexities of software development /on the development side/... or it won't get much use by professional developers.

<comment><USER5> Hello! I belong to the team behind Luna :)

When we are talking about testing framework, we should ask ourselves - <USER2> kind of tests are we talking about. In languges such as Python, Ruby or JavaScript (I don't consider JS to be a language, but this is just a side note) everything should be covered with all kind of tests - unit tests, behaviors testing etc. There are languages like C++ or Java, where some testing is not required, because it is done by the compiler - and I'm talking right now about just type system. Luna incorporates much better type system than C++ or Java. In fact Luna will throw compilation error if you want to access head element of an array if it cannot prove this element would be always there (Luna incorporates a complex type inferencer and dependent type system). You can tweak the compiler and allow for more liberal behavior if you like thought.

To sum this up - I'm not talking that test framework is not necessary. It is, it is curtial and need to be polished to allow a language to be widely used. I wanted to clarify, that a great type syste, like the one in Luna, prevents from making errors so much, that you can write much fewer tests and be sure everything works as it should.

Answering other questions: \- there are no global variables in the traditional meaning (in fact there are no global variables in purelly functional languages at all). If you want to have something like a global variable you use monads! "Oh no, monads, I'm running away!" \- this is a completely understandable reaction for vast majority of programmers. Because of that Luna incorporates an automatic monad management system. What it does is simple and allows using monads without thinking about it. You just put a "State.run" node and you pass all variables to it, that shoudl be accessible from every palce of its sub netwrok. Then you can put "get" node, that will access these "locally global" variables for you. It's just like a State monad in Haskell (this is explanation for Haskellers), but with visual, easy interface.

And one more thing. Global variables are pure evil. I would call them bilion dollar mistake, such as null pointer references. Monadic states are pure and nice solution for it. (btw. Luna of course doesnt have something like `null`).

\- The lines you see represent all data dependencies in a graph. Anything not connected with lines (or monadic lines - like two actions that print something to the screen) can be run side by side. Our compiler understands that and can shedule the nodes to be executed in parallel.

\- Exceptions are represented on the bottom of our page. Exceptions in the meaning known from imperative programming are messy, ugly and doesnt fit in the visual environment well. In fact they are hard to deal by developers too - have you ever tracked an exception stack of poorly written code? This is pure nightmare. Luna introduces dataflow exceptions - please look at our website and I will answer any qeuestions that could appear after reading it :)

\- We have created a really big graphs with Luna without ending with spagetti - each node is build outo of graph of other nodes. If you've got to many nodes on the stage is justl ike writing a collosal 1k lines long function in textual code. You can then select some nodes and collapse them into one (just like refactoring functions out of such code block).

We are aware of all these things and we do what we can to create a REALLY useful visual programming expirence. We've started this project because nobody ever did it and all the tools currently available (excluding some domain specific ones like Houdini, Labview etc) are just toys and cannot be considered programming tools.

<comment><USER16> > Exceptions are represented on the bottom of our page.

Are you referring to this?

      fileAge = open 'age.txt' . to Int
      age     = age.catch e:
           print 'An error occured: ' + e
           read 'Provide your age: ' . to Int

First, I think you probably meant to write _fileAge.catch_ there. Second, what would that look like as a graph? Having a visual programming language is not really interesting if you have to go back to text for exception handling. Maybe you should show a side-by-side comparison of the other examples as well.

<comment><USER5> Oh, thank you for spotting the error. Of course, there should be `fileAge.catch` there. I'll fix that in a moment. I will prepare a visual example of exceptions and put it in the website later today. For now think of it like that: running an operation results in a data and this data is transmitted over connection between nodes. If you read data from file it can be "broken" in different ways, for example it did not exist on disk. If you convert it to integer - it still could be broken or become broken (for example we were not able to convert this text to integer). So far you've got such graph of nodes: open --> to Int --> ... and the resulting edge could be broken if one of the exceptions occured. If you put there `catch` node you can either double click it and define its subgraph, that has input of the `e` variable or simply connect other input that would be used if the error occurs. Thats all - in contrast to imperative languages exceptions in Luna do NOT propagate over blocks of code - they propagate over the data dependencies. In fact the exceptions in Luna are just algebraic data structures that could have 2 values - Just ok or Error e - something like Either in Haskell (side note for Haskellers). Does it make sense to you? :)

</comment></comment></comment></comment><comment><USER17> There are a number of incredibly promising features here. Visualizing code graphs could be incredibly helpful in many contexts, especially in understanding high-level control flows by folding up subroutines as needed. Visual profiling is a dream come true. The functional language features make it seem like joy to use.

With that said, this is still just a concept until a language actually brings all these features together. Will believe it when I see it.

<comment><USER18> > There are a number of incredibly promising features here. Visualizing code > graphs could be incredibly helpful

Excited overuse of the word "incredibly", just like the author of the featured article.

> make it seem like joy to use.

Missing article, just like the author of the featured article. Interesting ;-) (OK, this one happens to a lot of people who come from a Russian background, for example.) If you are involved with this, I'm sure people would be interested to know! Maybe you could answer some questions...

<comment><USER5> As far as I know neither the author of the post on hackernews neither "soroushjp" are not involved in the project, but I am. I've been answering some questions here, so If you have any specific ones, I would like to help :)

</comment></comment></comment><comment><USER19> I love the idea of graphical programing, but whenever I use one (nipype, labview, or puredata), I end up with an unreadable mess.

</comment><comment><USER20> This is brilliant. I work in finance (trading) - and have been trying to learn Clojure and Rust on my own over the last year (no CS background). For people like me - this is phenomenal - if it works. The ability to think logically doesn't translate directly into the ability to program, or vice versa and a person must spend a considerable amount of time learning the tools of programming. This tool could fill that gap for non-CS engineers. Couple of questions (as you mentioned functional language) a) In the opinion of the makers - what is this language NOT good for? b) How good are the mathematical libraries going to be? As a benchmark I'd take Mathematica (not for speed - but width and depth of mathematical functions). If this question is redundant due to the ability to call Haskell - feel free to say so. c) How far does the automatic parallelism go? Is it truly distributed over any scale? Thanks again

<comment><USER5> Hello! First of all - thank you for a nice greeting! :)

Answering your questions:

a) This language is NOT good for any _really_ low-level stuff like programming realtime hardware systems or low-level processors programming. You should then use pure C or assembler instead. If you are programming other low-level stuff, you could feel comfortable using Luna's textual representation. The visual one gives incredible boost when designing the high-level architecture.

b) At the current stage Luna ships with a very limited standard library, but we will work hard in order to incorporate as many usefull libraries as possible. As you have spotted, Luna is able to directly call Haskell and we also provide foreign C interface, so binding any Haskell library is almost out of the box right now.

c) We are strongly working on this topic. Currently our graphs are able to run in parallel all operations that are not data-dependent in any way. However it does NOT scale well if you're thinking about distributed systems, because it's not easy to determine where to partition your program, so sending data over network will not kill the performance. We will though be working toward addressing it in longer perspective.

Did I answer your question? :)

<comment><USER20> Thanks for replying! (a) and (b) make sense. (b) will depend on adoption as well, so your answer is fully understandable.

Just a follow-up question on (c) - if you will allow me please. Are the data structures immutable like Clojure and Erlang, so that they could be distributed eventually, once the optimizations are done (and you are able to package the non-functional code like C into their own partitions for the distribution)? Reason I ask is that the page mentions Category Oriented Programming - which I am not at all familiar with. Regards

<comment><USER5> I would really love to answer any questions regarding Luna, so feel free to ask them as many as you need!

c) Yes, Luna supports immutable data structures in the form of composable algebraic data types. Composability means in this context that you can compose the sum and product types directly using Luna's built-in combinators, so you can for example build data types that share some constructor definitions (this is just a generalization of algebraic data types in general. As a side note, the first Luna release lacks some mechanisms to fully handle this abstraction, but this is understandable as this is an alpha release). Luna data types allow for efficient binary serialization, if you mean it by asking about "own partitions for the distribution". The Category Oriented Programming paradigm, on the other hand, is developed by us. It is widely described in the Luna user manual, that for now will be available for alpha testers only, but we will work towards releasing it to the public as fast as possible.

Did I answer your questions?

<comment><USER20> Thanks a lot, yes. All the best and look forward to this!

</comment></comment></comment></comment></comment><comment><USER21> I have a few questions:

a) When is the first alpha release planned ?

b) Did you go the Coq/Agda route with dependent types (only total functions can be defined), the Haskell (once the DependentTypes extension lands) route (partial/looping functions can be used in types and may need to be evaluated at compile time, the compiler can loop, there is no associated coherent logic), or the Idris route (only total functions can be used dependently) ?

c) How extensible is the Standard AST ? (e.g. would it be possible to define something like the Coq tactic interface from within the language, or through a compiler plugin ?)

<comment><USER5> Hello! :)

a) We will release it to the first group of alpha testers in couple of weeks from now. This will be couple of weeks, not couple of months.

b) We're going the Haskell route - we allow for non-total functions, and we will extend Luna's type-checker to understand as much as possible. In fact we treat type level very similar to the value-level, very similar to the type of types - level, etc, so there could be functions evaluated at compile-time and they could cause infinite loop. Please note that although we design Luna in order to be fully dependent type language, the compiler just hit the alpha stage and there is much more work to be done in this field.

c) The standard AST is really __very __extensible. In fact every term that belongs to AST is just different data type. We 've written a library in Haskell that allows handling open sum types using all the type-level machinery to help it be bullet-proof. Luna will incorporate a library that allows you to change and manipulate the AST from within a language - something like TemplateHaskell, but without the stage restriction known from GHC. This is not available at the moment though. I doubt though you will ever need to extend the AST using a plugin, because it allows to express _really_ wide logic, however I'm very interesting what idea do you have in your mind here! :)

</comment></comment><comment><USER22> Looks cool but it doesn't look like it's going to be fully open sourced. I can't spend a minute more of my time on closed platforms, just not worth the lock in and the eventual pull out.

<comment><USER5> The Language, its compiler and its whole ecosystem will be released as Open Source project. The only thing that we are still considering if releasing or not under Open Source license is the visual editor.

</comment></comment><comment><USER23> for a minute i thought asana open sourced their internal web framework

[https://asana.com/luna](https://asana.com/luna)

</comment><comment><USER24> Typo: "printing the first _hundread_ to the screen"

Anyway, looks interesting. I'll be keeping an eye on it, even if the whole visual part turns out to be a steaming pile, the text-based language looks quite promising.

</comment><comment><USER25> You should identify yourselves. This seems like it should be very exciting, but I'm turned off by the "high hat" and anonymous presentation.

<comment><USER5> Hi! I'm one of the founders of New Byte Order (the company behind Luna). Do you mean that our website lacks information about who we are? Right, we will ad it there! :) In the meantime you can read some of the comments below, where I describe in details who I am and provide link to my linkedin account. Still I would like to apologize for the inconvenience caused by lack of these information at the website! :)

<comment><USER25> Yes, exactly. Without knowing anything about the people involved I am (was) reluctant to invest further time and attention (I'm studying Category Theory right now with an aim to implement programming tools, so you can imagine I'm very interested!)

It's really great that you're addressing this. Thank you! ;-)

</comment></comment></comment><comment><USER26> It looks strongly influenced by Python, probably to ease novice users into it.

Edit: Not to be confused with another Luna Language: [https://github.com/luna/luna](https://github.com/luna/luna)

<comment><USER27> I don't think so. It looks like haskell.

<comment><USER28> Looks like elements of both, with some Erlang concepts as well.

<comment><USER5> I can very precisely answer the question as one of Luna designers. Luna's textual syntax is strongly influenced by Python and Ruby, because we think that it is one of the most widely understandable and easy to use syntax out there at the moment - just like wantreprenr007 said.

The concepts in Luna were influenced mainly by Haskell, Idris, Erlang and other functional languages.

</comment></comment></comment></comment><comment><USER29> There have been tons of "graphical programming" languages and IDEs trying to pull it off for the last 15 years and pretty much all them have been total shit.

This doesn't look any different. Someone already said it, but the fundamental problem with these are that it's extremely hard to build big and complex software without making it look like a huge mess. In a normal programming you can always call any part of code and make any number of instances and put them almost anywhere you want with very simple, logical and linear code which is executed in a normal standard prodecure (= line after another). With this almost everytime you make some changes you'd have to rethink the whole program flow and move all the components/blocks to different places and there are millions of lines going all around the place.

1/10, will fail.

<comment><USER30> _...the fundamental problem with these are that it 's extremely hard to build big and complex software without making it look like a huge mess..._

In my view, text based languages could be this way too, except that the habits of making code at least marginally readable (e.g., indentation) and modular (subroutines, local variables, etc.) are drilled into everybody who learns programming, or learned through "the apprenticeship of observation."

Also, those habits require only a bare minimum of physical effort, such as reaching for the tab button or enclosing some code in a function definition.

I think a problem with graphical programming is the sheer physical effort that it requires, encouraging sloppy work. Maintaining readable code as it grows in complexity is a major chore, involving physical and not just mental, effort. In practice it doesn't happen.

</comment></comment><comment><USER31> That looks amazing but the "functional" bit is offputting me as I am a stupid user and never got functional programming. Something like this for dumb scripting would be a godsend.

<comment><USER32> How did you try to learn functional programming? What was the most difficult to grasp?

<comment><USER31> To be honest I did not. I am happy with the procedural/OO code I write in Python. But whenever I even see functional code, I can't even read it.

<comment><USER26> Maybe there is a lack of available video courses teaching functional style, it might not be as hard as it seems (wan't for me, but a sample size of 1 is anecdotal). Give it another try perhaps?

<comment><USER33> Honestly, I nor anyone else has any idea what she or he means by functional since they didn't provide any sort of example, and it's not even clear that the user would even know functional programming if they saw it. They referenced python, so should we assume they don't understand what map does? Map is just a function which is properly documented and easy to find help on. Is the user saying that they aren't able to look up the definition for a function they don't understand? Are they saying they refuse to look up definitions for functions they don't understand? How on earth do they get anything done if they refuse/can't look up function definitions?

What I'm trying to say is that it's very likely the user doesn't even know what "functional" means. They just hear some keyword they don't understand and dismiss anything that follows. Because when you think about it, it doesn't really make any sense that a programmer could be a programmer if they couldn't look up things they don't understand.</comment></comment></comment></comment></comment>


Ask HN: Prefab frameworks vs custom within your own open source projects? - <AUTHOR>

I'm working on a large'ish open source platform which is meant to be heavily extensible via third-party modules.
On the one hand there are a lot of nice prefab JavaScript MV* frameworks out there, of which I have some experience with. If I expected to be the only person, or nearly the only person, writing code for this project I wouldn't hesitate to grab a pre-existing framework.
That said, in this particular circumstance I can think of a few potential downsides to choose a prefab framework:
1. Trying to keep up with versioning of a prefab framework sounds like a potential nightmare. I want to be able to focus primarily on features for the application/framework itself, and not be a slave to the version of JS framework that lies beneath the surface.
2. There is so much fragmentation within the JS framework space that whatever I choose would leave a majority of people unfamiliar with it (and possibly alienated). If I rolled my own for the project everyone would at least be on the same page.
3. Something as foundational as a MV* framework demands that you somewhat marry it. You can decouple all you want but swapping from Backbone.js to Angularjs (or vice-versa) is not a small task for anything non-trivial. The codebase for my project is large enough that whatever choices are made, will have to be lived with for some time. I really dislike the idea of marrying my own project's success or failure to any one prefab framework. (e.g., some new hotness comes out tomorrow and perceptually makes what the project uses look like yesterday's garbage - doesn't seem like it would be such an issue if the foundation was custom in the first place)
So roll-my-own MVC architecture, or would using a prefab framework within my project be less of hassle than I'm worried about?
Thank you in advance for any constructive experience/opinions! <comment><USER2> if they solved your problem, use one of them. reinventing things takes much longer time than building something with them. there is already plenty of great frameworks running in the wild. backbone, ember and angular.js have their own great communities. find out which one you like more and then if you think it has some missing features or things done wrong then they are open source. you can always send a PR.</comment>


The Amazing Colossal Science Fiction Ketchup - <AUTHOR> http://blog.fogus.me/2012/09/21/the-amazing-colossal-science-fiction-ketchup/ <comment><USER2> If you're into this sort of thing you'll probably like my side project, BestSFBooks:

<http://bestsfbooks.com>

It's basically a Ketchup list of award winners. I'm partially to the PKD award myself.

<comment><USER3> Very nice. I'd been meaning to get back into reading novels, and I've already bought a few described here.

</comment></comment><comment><USER4> I tried something like this with the list of Hugo/Nebula award winners. That project derailed in short order - as soon as I read something I really enjoyed from a particular author I'd end up reading their entire body of work rather than continuing down the list.

<comment><USER5> Nothing wrong with taking some branches. It would stink if it turned into a chore.

</comment></comment><comment><USER6> 1950s: _The City and the Stars_ by Arthur C. Clarke

I've read few works that are so broadly and extensively predictive. (Though it's been a while, so pardon any memory lapses on my part.)

Genetic engineering. Subsuming oneself in an immersive gaming culture. Crystalline memory stores. Probably several other things I'm not recalling right now.

</comment><comment><USER7> > Edison's Conquest of Mars

I read that a few months ago. What a hoot! It wasn't meant to be funny, but it's so distant from us that it is funny anyway.

</comment><comment><USER8> I would highly recommend throwing some Stephen Baxter on there, especially "Light of Latter Days" (a collaboration with Arthur C. Clarke). Its examination of the death of privacy in the face of increasingly intrusive technology developments is absolutely fascinating and has some exciting parallels with the modern world.

<comment><USER9> Did you mean the "Light of Other Days"?

Fascinating list, I just finished reading Anathem by Neal Stephenson. Quite an epic. Everyone I know who has read it says that Cryptonomicon is a better book by Neal. Looking fwd to getting it!

<comment><USER10> Yup, Other Days. Crypto is a great book. Not really better, just different. I'd also recommend Reamde very highly. More modern, action thriller but definitely a Stephenson novel.

</comment></comment></comment><comment><USER11> This reminds me with my trying to catch-up on philosophy and its writers.

I began wit Aristotle (because you know, he was the first). I never finished his Organon since it was terribly, terribly boring. I never read anything else, so I ended with Aristotle.

<comment><USER5> I have a Philosophy Ketchup list as well, it's too bad that you halted at the start. Nothing is more painful than a boring book.

<comment><USER11> Well Aristotle is sort of important, he laied out the basis for today's logic and that sort of things.

But it's really terribly long (since he had the idea that he has to describe EVERYTHING) and, at times, it doesn't make sense from today's perspective of today's logic and set theory.

</comment></comment></comment><comment><USER10> I'm the fellow that's sooo tempted to add another 50 books to be read. But, that's an incredibly detailed list and more than enough to last. I will highly recommend 2 books though.

Anathem, Neil Stephenson. Have read this book at least a dozen times now.

Lilith's Brood, Octavia Butler. This is one of only 2-3 books in my _life_ that made me physically uncomfortable at times. It's not a happy story, but very well done. It'll make you think and feel.

(3rd book) The Road, Cormac McCarthy. Dark, stark, brutal prose. Not strictly sf, but is in an apocolyptic setting.

<comment><USER5> Thanks for the recommendations. I've personally read them all, but could go for a re-read of Anathem.

</comment></comment><comment><USER12> The PKD selections are curious. I would add "Time Out Of Joint" and "Man In The High Castle".

No Walter Jon Williams? "Aristoi" at a minimum, and "Angel Station/Voice Of The Whirlwind". If that pleases, add "Metropolitan/City On Fire"

Also, the original "Planet Of The Apes".

I almost forgot -- at least one Aldiss. My fave is "Report On Probability A", but it's an acquired taste.

[edit -- no Arthur C. Clarke? Not even "Childhood's End"?]

<comment><USER5> I caveat the list in the beginning with "If it's not on the list then I've either read it already..."

In the cases that you mention this holds true.

</comment></comment><comment><USER13> When I first got into catch up, I used the list at wikipedia of joint hugo and nebula award winners: [http://en.wikipedia.org/wiki/List_of_joint_winners_of_the_Hu...](http://en.wikipedia.org/wiki/List_of_joint_winners_of_the_Hugo_and_Nebula_awards)

<comment><USER14> Where I found one of my favorite books from a genre I generally don't like (alt history): [https://en.wikipedia.org/wiki/The_Yiddish_Policemen%27s_Unio...](https://en.wikipedia.org/wiki/The_Yiddish_Policemen%27s_Union)

</comment></comment><comment><USER15> Children of the Mind is on there but none of the previous Ender Game series? I would say include all of the previous, but stop at CotM.

</comment><comment><USER16> Step 1: don't call it "Sci-Fi". Its science fiction. No need to abbreviate it. It marks you as a noob.

<comment><USER10> Sci-fi, scifi, sf, speculative fiction, science fiction, probably more. He can call it whatever the hell he wants, it's all valid.

<comment><USER16> And do you call San Francisco, "Frisco"?

<comment><USER17> Actually, yes. When referring to an item inspired by it, such as a Frisco Burger (served on sour dough bread).</comment></comment></comment></comment>


Tether inadvertently prints five billion unbacked tethers - <AUTHOR> https://decrypt.co/7871/number-almost-go-up-tether-inadvertently-prints-five-billion-unbacked-tethers <comment><USER2> This why i stay skeptic. The twitterfeed is fun. [https://twitter.com/paoloardoino/status/1150164876138037249?...](https://twitter.com/paoloardoino/status/1150164876138037249?s=21)</comment>


Eric Schmidt On Google Wave's Death Video - <AUTHOR> http://www.youtube.com/watch?v=FJ-jNaAxISk

<comment><USER2> i grinned when he started talking about derivatives to reporters

</comment><comment><USER3> Not hyping vapor-ware is an interesting concept that MS could look at adopting. Wonder if Balmer is lurking on HN... :-P

</comment><comment><USER4> The audio quality was pretty bad. The content was good.</comment>


Ask HN: How Good Is Web-Based VR with Oculus Rift? - <AUTHOR>

I have seen that Mozilla is playing with VR, and I think Chrome.  I am curious how good the experience is versus "native" (i.e., not a VR-enabled web page).  Basically the same? <comment><USER2> I never tried viewing a web page with vr. but I did try to view my windows desktop with oculus rift and I can't read the text.

the resolution isn't enough.</comment>


Louis C.K. can't stop the pirates - <AUTHOR> http://gigaom.com/video/louis-ck-pirate-bay/

<comment><USER2> Everything gets torrented. The Humble Bundle got torrented and you could buy it for five cents. Complaining about something ending up on the Pirate Bay is like complaining about used book sales; you can't say you didn't expect it.

Now, if he could prove it cost him any sales, he'd have something novel. If he could prove that fewer people paid because he didn't include DRM I would be shocked. It's mere existence on a torrent network simply says that not everyone is going to do what strangers tell them on the internet.

</comment><comment><USER3> I can sympathize with the "downloaders" here. There is a lot of creative work that is somewhat in between things that I really like and things that I can not stand. Louis CK is one of these. I am watching his TV show most of the time, but it is nothing that I would miss if they stopped airing it or someone that I would pay to see perform live. I can understand people who download his stuff just because they have nothing better at the moment to "consume".</comment>


A bug so cool that the development team was reluctant to fix it - <AUTHOR> https://devblogs.microsoft.com/oldnewthing/20190603-00/?p=102534 <comment> java-man they never learned to coalesce undo events

</comment><comment><USER2> You can't tell us something like this and not show it us in action.</comment>


Paul Kedrosky: Shut Up About the Age Thing - <AUTHOR> http://paul.kedrosky.com/archives/2007/06/03/shut_up_about_t.html <comment><USER2> It is my observation that many of the young people who boast about age are gleefully unaware of the horrible failure rate of young, (under 30), entrepreneurs. Many point out the brilliant successes, without mentioning the 100 other young entrepreneurs that failed in the same space. The numbers bare out the indisputable fact that older entrepreneurs will fail less often than younger entrepreneurs. In fact the statistical variance in the success rate is so large that wise VCs and angels actually use age in their models.

For instance, if we are advising angels who are want to dabble, but are at heart risk averse, we do swing them over to that 38 year old guy with the new molecular imaging startup. On the other hand when we are advising VCs and angels that are more than just old ladies' investment clubs, we do steer them to the kids. This should not come as a surprise to people.

It would be a mistake for young people to think that they are better suited to creating successful startups. They are not. They are better suited to creating MORE startups, of a decidedly lower quality. The older entrepreneur in my illustration will show better judgment at every step of the game when compared to a younger entrepreneur.

That includes the first step . . . choosing to create a molecular imaging startup instead of a web 2.0 startup that anyone can copy.

</comment><comment><USER3> The fact that you can't control something doesn't mean you shouldn't think about it. Basketball players can't control their height, but it affects the techniques they can use.

<comment><USER4> You missed his point. What he is saying is that age should not be a matter of significance.

<comment><USER3> From the article: "There are many things in life you are or can be responsible for, but the date of your birth is not one of them. When I meet someone who makes too much of their calendar age..."

Doesn't sound to me like I'm missing his point.

40 year olds have different strengths and weaknesses from 20 year olds. Very few people, possibly zero, can transcend that. I can't. And it's stupid not to adjust your game to suit your strengths.

</comment></comment></comment><comment><USER5> There are two things to consider. Young people mind is still malleable and they are generaly free or duties and in a healthy condition. They can thus easily adapt, reconsider classic models and be totally commited to the startup with ne reasons to fear failure.

Older people tend to have a less malleable mind. They are slower to change direction and take decisions, but when they do, it is wiser and better thought than young people. They have to find compromise between the various external duties they have and can take less risk. They have less energy resources and endurance than young people.

From this perspective, it is clear that young people are more sexy for VC, because they are looking for innovative mercenaries ready to give their life and health for their company.

But not beeing sexy to a VC doesn't mean the project is rotten. The success depends on the project and the context. Beside there are many older people out there with a 20 year old innovative mercenary spirit and there are many young people out there with a 30 old guy's maturity.

So claiming there is a kind of use-by day for entrepreneurs doesn't indeed make sense.

</comment><comment><USER6> Interesting juxtaposition of this post (at #4 on news.yc currently) versus the _In Silicon Valley, the Crash Seems Like Just Yesterday_ post (at #3 on news.yc currently), because of this quote from the crash article:

 _"A lot of froth, especially if you mix in a lot of inexperienced people, that's a bad thing."_

</comment><comment><USER7> I've been thinking about this a lot lately too.

Chances are, the older you get, the average person will have lived through more "failures" than huge mega-successes. This influences how they perceive the world and their expected outcome.

Some 20 year-old who has never had to work for a BigCo or failed startup has not had that experience yet. (Not sure if this is a plus or minus, probably a plus.)

Sometimes, just sometimes, a "crotchety old-timer" who might still only be in his late twenties, can bring something to the game that a 20 y/o might not have at that age.</comment>


Ask HN: What is the best Linux laptop for software development? - <AUTHOR>

I'm looking for at really good laptop for software development (Rails and Android mainly).
Most important requirements:

  1) Hardware fully supported by Ubuntu (except eg. fingerprint scanner)
  2) Great keyboard
  3) Great antiglare monitor, preferably 15" og 17"
  4) SSD of reasonable size
 Disregard the price tag. What is the best machine money can buy right now? <comment><USER2> Thinkpads are considered really well-built laptops and typically work very well with Linux. Just double check the video card and wifi/3G cards for compatibility before you order one. Stay within the T and X (and W?) series, some of the new lines Lenovo added aren't very good. The SL series in particular appears to just be rebranded Ideapads.

</comment><comment><USER3> I've heard good things about system76, and one of their laptops is high on my list of toys I'd like to own.

<comment><AUTHOR> They look really, really nice. And the specs can be boosted to impressive levels.

Just too bad that it isn't possible to see the machines on display somewhere. The keyboards look bit like the newer MBP keyboard, and I don't like those at all. But I guess I could dig into some reviews and check that out.

<comment><USER4> They have a 30-day money-back guarantee. Buy one and return it if you don't like it.

<http://www.system76.com/home/warrantyandreturns/>

<comment><AUTHOR> Excellent tip, thanks!

</comment></comment></comment></comment><comment><USER5> A sager or clevo ph150hm most resellers have specs that will be much better than any mainstream laptops for a fraction of the price. As an example I plan on picking up a i7 16gb ram 2x 750hdds and a 6970m with a 95% gamut NTSC screen for about $1500

<comment><AUTHOR> I'm sure there is money to be saved here. But the question is, how much of my time am I going to spend trawling through pages like this one?

<http://www.clevo.com.tw/en/products/item.asp?procatalogID=7>

Also, it would be a hassle to verify that the hardware was supported by Ubuntu. I didn't state this in my question, but I'm looking for something that "just works" to the extent possible.

I appreciate the tip though, thanks.

<comment><USER5> Try malibal - a reseller clevo doesn't distribute to consumers directly. Hardware issues are largely a myth unless ubuntu doesn't backport drivers. If you want in depth answers look at a notebook website not hn

</comment></comment></comment><comment><USER6> Lenovo Thinkpad. It's been the answer for a long time, I expect it to be the answer for a long time to come.

If for no other reason, the keyboards are the benchmark by which all others are measured.

</comment><comment><USER7> I've always liked IBM / Lenovo ThinkPad keyboards, I believe on the W and T series they're still high quality. I vote for Lenovo ThinkPad W series, then T series. Should meet all your requirements.

<comment><AUTHOR> I loved the IBM T42 keyboard. Best I've tried with the possible exception of the old MacBook Pro (ca. 2005).

The Lenovo product line is a maze...I thought the X-series was the best, but I'll check out your recommendations.

</comment></comment><comment><USER8> Count me as another vote for Lenovo Thinkpads. I've had good experiences with many models (currently a T500).

The hardware is typically well suported in Linux and the machines are fast.

</comment><comment><USER9> I really like the Lenovo X201. Good build quality and extremely portable. You'll need to get a docking station if you want a DVD player, but other than that, it's a pretty nice machine.

</comment><comment><USER10> Define great keyboard? I've heard people say that the macbook keyboards are too bright, too hot, wrong sort of UK keyboard, too light, etc.

<comment><AUTHOR> I only care about how they feel. The old MPBs had a keyboard that was soft to the touch (eg. not "clicky"), there were no gaps between the keys and each key was curved to fit your fingers.

In contrast, the newer Macbooks and MBPs have clicky, flat keyboards. It takes much more effort to depress a key and even after a year of getting used to this I'm unable to type as fast as I could on the old one.

About the keyboard layout, I don't care what is printed on the keys. US-style wide enter key is fine, as is European style tall enter key. These things are pretty easy to get used to in my experience. Color, backlight etc. is not important.

What matters is simply how good it is to write on, especially after several hours and especially when typing fast.

</comment></comment><comment><USER11> Thinkpad were the best - T, X and W series. Asus Higher end models are great in performance and build. Also check Toshiba.

</comment><comment><USER12> Does anyone know if the MacBook Air works well with say Ubuntu?

</comment><comment><USER13> Asus ROG</comment>


Ask HN: Comprehensive guides for what to do in a post-climate-change world? - <AUTHOR> Most of the coverage I see on climate change is saying that it's already too late and we are going to feel some of the worst effects of climate change, regardless of what we do now.
Assuming they are correct, what should we be doing now to protect against the worst effects of climate change?
Are there "safe" places we should move to (more specific than "away from coast lines"), should we ensure food security by stockpiling long-life foods and water sanitisation methods, how do we ensure energy security, how many years of self-sufficiency should we prepare for etc. ?
I guess this boils down to being a doomsday prepper, but I'm looking for guidance specific to climate change that is practical and based in reality. <comment><USER2> > should we ensure food security by stockpiling long-life foods and water > sanitisation methods, how do we ensure energy security, how many years of > self-sufficiency should we prepare for etc

i've never tried to do the self-sufficiency thing myself, but from reading a few books about it: it is very hard to become completely self-sufficient. It is more realistic to aim to become partially self-sufficient, and develop strong ties with your local community. E.g., if you get seriously sick or injured, and there aren't functioning institutions, who is going to help you? Your family or your neighbours.

What skills or resources will you be able to offer your community in return? enterprise software development? not very useful. Skills in low-tech medicine, farming, construction and repair with hand-tools, a bunch of surplus vegetables? likely far more useful.

> ensure food security

not sure if this is a helpful comment, but: i dont think it is realistic to be able to ensure security (food or otherwise) of any individual. diversification helps -- may be able to ensure security of the species, if not individuals.

</comment><comment><USER3> Sounds like you've got the bulk of it. There's nothing hidden, no secret methods to survive.

But then again... "Goddamnit, you've got to be kind." ~ Kurt Vonnegut Jr.

So, all I'd add is that the world is difficult and chaotic and hard and all we have is each other. So, take a moment and think about how to serve at every opportunity.</comment>


An ancient cure for Alzheimers? - <AUTHOR> https://www.nytimes.com/2017/07/14/opinion/sunday/alzheimers-cure-south-america.html?_r=0 <comment><USER2> I think _cure_ was a poor word choice for the title; _vaccine_ or _immunity- booster_ is a better analogy.</comment>


Sprint and T-Mobile Agree on Terms of $32B Deal - <AUTHOR> http://dealbook.nytimes.com/2014/06/04/sprint-and-t-mobile-agree-on-terms-of-32-billion-deal/ <comment><USER2> I really hope this doesn't go through. T-Mobile has been great for me, and shed a lot of the anti-consumer policies of the other carriers. I'd hate to regress.

<comment><USER3> I feel like it could have benefits, but like you I lean pessimistic.

I had a deeply discounted unlimited plan with Sprint (a couple family members worked there).

I left when T-Mobile offered a lower price for unlimited web + text. The only people I know who use voice use OTT services for it anyway. On top of that, T-Mob offered BYOD, letting me run pure Android, without all of Sprint's then unremovable NFL, NASCAR, and Facebook apps. It beat Sprint's employee discount plan for me, and easily.

My family members who work there were frustrated by the news. They mostly rationalized by bashing T-Mobile, claiming their prices were unsustainable, arguing it must be a risky, poorly run business.

I think those prices are only unsustainable when you have a major carrier's assumptions. Assumptions about acceptable levels of overhead and expected levels of profit.

I think Sprint did some really bold things in its history. It fought the good fight as MCI against an entrenched telecom monopoly, back when sentiment was against them, when legislators were literally talking up how wonderfully efficient the telecom monopoly was.* Today I feel like T-Mobile is more like the scrappy startup that benefits consumers primarily by running aggressively trim.

Unlike others posting here, I've never had any network issues with T-Mobile, and had routine congestion based or coverage based issues with Sprint. But that doesn't really matter. A larger network could offer more redundancy, and faster speeds on both sides of the network.

Historically though, conglomeration of telecom companies has reduced competition, and essentially led to monopoly rents for a service that is especially susceptible to price competition. (There's a reason they try to lock you in with contracts. Competition is the enemy.) Here, I worry that Sprint's management has noticed that T-Mobile is unlike other competitors, AT&T, and is competing on price, setting a dangerous precedent. I worry they're trying to squash this unruly behavior through the purchase.

Potential benefits might be nice, I just worry the downside risk is very large.

* Check out "The Master Switch" by Tim Wu, or at least this review: [http://www.nytimes.com/2010/12/12/books/review/Leonhardt-t.h...](http://www.nytimes.com/2010/12/12/books/review/Leonhardt-t.html?pagewanted=all&_r=0)

<comment><USER4> "I think those prices are only unsustainable when you have a major carrier's assumptions. Assumptions about acceptable levels of overhead and expected levels of profit."

And assumptions about acceptable levels of service and coverage. I'm saying that as a loyal T-Mobile customer, but it's readily apparent that when I visit my parents in my small home town, or drive a few hours east to the beach towns near me, or really go anywhere much outside a major city, my service is poor or non-existent, and my Verizon-customer friends' service is fine. I'm okay with that because I live in a big city, don't go to small towns often, and think the mediocre coverage is worth it for the lower price, but there's definitely a "you get what you pay for" aspect to all of this, at least in my experience.

<comment><USER3> > I'm saying that as a loyal T-Mobile customer, but it's readily apparent that > when I visit my parents in my small home town, or drive a few hours east to > the beach towns near me, or really go anywhere much outside a major city, my > service is poor or non-existent, and my Verizon-customer friends' service is > fine.

Yeah, I think more testimonials are on your side here, so I don't doubt that T-Mobile subscribers face this issue, but it's strange to me, because I had exactly the opposite experience in reliability. Moving from Sprint to T-Mobile improved my reliability considerably.

Sprint would claim I had full bars, but downloads would stall out, webpages would just die half loaded. This was near their headquarters in Kansas City. T-Mobile's network has never crowded me off line, and has worked for me fairly consistently on the east coast.

Neither seemed to work very reliably in the long rural gaps between Kansas City and other metropolitan areas at the time. (Though I hear Sprint has I-70 covered fairly well now.)

I think part of my experience is driven by the fact on the spectrum of "voice user" to "web user," I'm really far to the right, probably outside of the mainstream. Could be T-Mobile's investments in data have come at the expense of their voice reliability? I'm not sure...

I guess if the main issue is T-Mobile's lack of coverage, then on net, things will improve after a merger. If the main concern is Sprint over-selling their network so that it becomes congested and unusable around 6 PM, then a merger is mostly just going to make things worse. It will be better in the short term, but as Sprint takes on subscribers, unless they change their strategy, they'll still overbook the lines.

<comment><USER5> T-mobile's strategy has generally been a higher _quality_ network over a limited footprint. If your within their limited coverage area, coverage tends to be quite good. Wander outside it and it degrades rapidly.

Sprint coverage tends to be better, but their network has generally lagged behind in terms of technology.

</comment></comment></comment></comment></comment><comment><USER6> Good news is if this deal doesn't go through, T-Mobile gains to make over a billion dollars to make its network better/faster. * AT&T paid about 4 billion in cash and spectrum when the last merger fell apart..

<comment><USER7> Best business model ever.

<comment><USER8> next up, Verizon.

</comment></comment></comment><comment><USER9> Breakup fees seem to be T-mobile's new business model

<comment><USER10> It worked really well before ;)

</comment></comment><comment><USER11> I am cautiously optimistic.

To get some context for what the new Sprint/T-Mobile might do, it's worth watching this fantastic interview of Masayoshi Son, CEO of Softbank (majority owner of Sprint).

[http://www.theverge.com/2014/5/29/5761020/i-love-america- and...](http://www.theverge.com/2014/5/29/5761020/i-love-america-and-i-want- to-buy-t-mobile)

He compares American internet to Chinese air pollution, goes on to lambast Comcast, and admit how bad Sprint's network is and how much work there is ahead.

<comment><USER12> I'm curious of the technical side of things, though.

Sprint is CDMA, Tmobile is GSM. That doesn't mix well, at least compared to a ATT/Tmobile merger. As a current Tmobile user, I'd like to keep the ability to switch out SIM cards, but if Sprint buys out Tmobile and replaces it with their network, that may not be possible.

<comment><USER13> 4G LTE is based on GSM technology so as devices get more and more bandwidth heavy most of the network load will be on GSM derived technology. There are likely infrastructure differences on the switching side between TMobile/Sprint but the RF technology is the same since Sprint is moving away from WiMax based 4G to GSM 4G LTE.

<comment><USER14> LTE has handover capabilities with CDMA, EvDO, GSM, and UMTS. The handovers are simpler for GSM and UMTS though since LTE is also a 3GPP standard.

<comment><USER4> Can a single LTE node/tower/whatever handle handover for both CDMA and GSM? In other words, could a hypothetically-merged company provide the LTE part of the service to both TMobile and Sprint customers using the same equipment?

<comment><USER15> T-Mobile already does something similar in the US with their MetroPCS network. They've started to open the old MetroPCS network up to T-Mobile users and vice versa by broadcasting multiple MNC (mobile network codes) from the same antennas. If a phone call comes through, it'll hand off to T-Mobile's GSM network or the old MetroPCS CDMA network.

I think Orange and T-Mobile do something similar in the UK with their shared EE network and Verizon with their LTE in Rural America partners in the Great Plains/Maine/etc.

</comment></comment></comment></comment></comment></comment><comment><USER16> My (rather large) gut tells me the regulators will say no, and T-Mobile will yet again use the breakup money to invest in more spectrum, and come out on top.

<comment><USER17> noob question warning, I don't understand how a breakup fee works in america. If the deal can't happen due to regulators, why Softbank should be accountable for that?

EDIT: typo

<comment><USER18> There's no legal obligation to set up a breakup fee, and it's not specific to the US; it's a conventional term in potential merge agreements when there might be an expectation of regulatory interference.

The announcement of a merger has major market effects, which tend to improve the standings of one company and not the other; the announcement of that merge failing will have similarly large market effects. The breakup fee is simply a term in the negotiated contracts that specifies what happens if the merge fails to go through; the company whose market standing will fall as a result of the merge failure would negotiate to get paid a breakup fee.

</comment></comment></comment><comment><USER19> I am not an expert on this but I do not believe that this merger will pass the Herfindahl–Hirschman Index,test which I think the DOJ takes pretty seriously. That is what I think tripped up ATT when they made the same move. [http://www.justice.gov/atr/public/guidelines/hhi.html](http://www.justice.gov/atr/public/guidelines/hhi.html) [http://en.wikipedia.org/wiki/Herfindahl_index](http://en.wikipedia.org/wiki/Herfindahl_index) I have not done the calcs (too lazy) but maybe someone out there has. My guess is it fails on this test.

</comment><comment><USER20> The article suggests that regulators will feel pressure to accept at least one major merger and reject at least one. Among them, a merger of #3+#4 wireless carriers (Sprint+TMobile) to form a new #3 seems less pernicious than a merger of #1+#2 cable operators (Comcast+TimeWarner) to form a new super-#1. (The ~40mil combined customers is almost 10x bigger than runner-up Cox's ~4.5mil.) My fear is that regulators could find the reverse conclusion by focusing on metrics that don't really reflect the competitiveness in each market.

<comment><USER21> Horrible psychology to this kind of logic, but it makes sense if you're only thinking in terms of "FCC corporate whoring that can pass the PR smell test", not unlike the "friday news dump".

</comment></comment><comment><USER10> Aaaand there goes choice again. Seems in the US landline (at&t/Verizon vs Comcast) and wireless data (at&t vs Verizon vs Sprint) will be available on a oligopoly basis only. Very sad to see Deutsche Telekom finally leave the States. They were the only real innovators in that market.

<comment><USER22> I like what Freedom Pop, Republic Wireless, and Ting are doing. It is likely that if T-Sprintle was as big as Verizon or AT&T they would entirely drop their support of 3rd party providers and screw over the competitive market under their shoes.

<comment><USER23> Same on T-Mobile side with companies like PTEL

</comment></comment></comment><comment><USER24> You can't take two networks with bad build outs and combine them and get one big great network. Many of the places each is spotty are very similar. Additionally they both use two sep air interfaces which will make integration even more complex. More troubling is that this market needs more competition, not less. To enter the market you need huge swaths of spectrum and having that in the hands of three large competitors vs allowing more competition is unwise for consumers. This deal should be quickly shot down by the FCC/ DOJ. We need more entrants in the space, not less.

</comment><comment><USER25> Any perspectives on what's likely to happen to Ting's Sprint MVNO status?

They're awesome, and T-Mobile's been slowly adopting pieces of Ting's pricing/openness policies.

<comment><USER26> > What will happen to Ting?

Nothing.

Ting has a contract MVNO agreement. Unless Sprint goes out of business entirely, or breaks their contract (very unlikely), nothing will change for Ting at all.

Ting might have to make folks buy new devices (if T-Mobile can succeed in finally shutting off Sprint's legacy 1X and EVDO CDMA stuff), but nothing should happen to Ting that would prevent them from operating.

EDIT : Ting themselves commented on this at [https://ting.com/blog/what-would- a-sprint-t-mobile-merger-me...](https://ting.com/blog/what-would-a-sprint-t- mobile-merger-mean-for-ting/)

</comment></comment><comment><USER18> Fast-forward 6-12 months from now, and one or more regulatory agencies will nix this just like they did the AT&T deal.

<comment><USER27> Would that be good or bad, though? I'm still not sure what to make of it. There's the "viable third competitor" argument, but four is more than three...

<comment><USER18> More competitors isn't always a good thing. This would solve significant problems for T-Mobile, making them a more viable competitor. I'd love to see T-Mobile become the #1 carrier with corresponding expectations of coverage.

The AT&T/T-Mobile deal made sense when it was attempted, if only in terms of network coverage. This deal only makes sense if Sprint and T-Mobile plan to merge their LTE networks, since CMDA and GSM don't overlap.

</comment></comment></comment><comment><USER28> Sprint promised LTE service a while back and had a slew of phone with this technology as an option that could be enabled. On the East Coast, Sandy came and destroyed much of the infrastructure we were told, so the LTE technology hasn't really been working as we wish and we told it would. With recent mergers, it may be true that these "small" big companies don't "have the financial resources to compete against...larger players [(Verizon, AT&T)], nor the suite of offerings to attract customers who can get a whole host of services from other rivals. As a result, both sides believe that the only way to remain relevant is to combine."

I have had Sprint for over 10 years and I like Sprint, my service is fine, and the price that I pay is great. I hope this does not change if this deal gets past the antitrust regulators.

</comment><comment><USER29> Cell phone company mergers should come with a requirement that their entire combined spectrum block go back up for open bid, with some of it set aside for new entrants.

Mergers of companies that control scarce resources have some serious tragedy of the commons problems. There should be a significant cost to doing it.

<comment><USER30> In theory, the whole point of privatizing the spectrum is to avoid the tragedy of the commons problems. This seems to have been the winning economic consensus in the 1980's and 1990's, which led to the FCC adopting the auction model for spectrum.

Read Tom Hazlett. Or back to Coase: [http://old.ccer.edu.cn/download/7874-1.pdf](http://old.ccer.edu.cn/download/7874-1.pdf)

<comment><USER29> I definitely agree that that was the intent, but that was in the wake of the biggest breakup of a telecom monopoly in history.

</comment></comment></comment><comment><USER31> Have two major utilities/companies ever merged and consumers/taxpayers come out with a better company, better product, and cheaper offerings?

<comment><USER32> In the UK, T-Mobile and Orange merged into Everything Everywere (now just 'EE') 4 years ago.

I can't give an objective statistical answer (or even a first hand subjective answer, as I haven't been a customer of theirs - I left Orange a couple of years before that), but from people who are customers to other random conversations, I've heard lots and lots of people say coverage got better due to the merger, and quite a few say prices got better. Don't think I've heard a single person complain (specifically about the merger - some complain about the company, but that's true of any phone company).

Edit: there's also the formation of Virgin Media, which has been a major force in the UK for 6-7 years now, and is made up of a couple of mergers (NTL + Telewest to form NTL: Telewest, then a few months later a merge with Virgin Mobile). I've no idea if this made it better or cheaper, but certainly I don't remember ever hearing specific complaints against the merger (either when it happened, or afterwards)

</comment></comment><comment><USER33> T-Mobile was great, but recently I experienced more and more data drops (have full bar of H or LTE, but unable to connect to anything) around the Bay Area. So I do hope they can have some money (either from acquisition or breakup) to improve their network.

</comment><comment><USER34> IMO, if this is approved, would be a better deal than the failed Att-tmobile deal.

</comment><comment><USER35> Weird that the NY Times would make such obvious mistakes.

AT&T Wireless and AT&T are separate companies (AT&T Wireless is not buying DirectTV)

The same with Verizon and Verizon Wireless.

They discussed four different companies as if they were two.

<comment><USER36> You may be working with outdated information. The separate publicly-traded "AT&T Wireless" company disappeared in 2004, and its successor has been wholly-owned by AT&T Inc. since late 2006.

Meanwhile, Verizon Communications has always been the majority shareholder in Verizon Wireless, and sole owner since February.

Whatever separation there may still be between these operations in the corporate structure (e.g. AT&T Inc. vs its subsidiary AT&T Mobility LLC) is only that - corporate structure. It does not ultimately change what each parent company owns / does.

</comment></comment><comment><USER37> As long as Legere remains at the top I'm cautiously optimistic. TMobile are so much better than Verizon it's not even funny.

</comment><comment><USER38> So this isn't an acquisition of a company correct? It's more of a potential merge (ex: Activision + Blizzard)

<comment><USER39> seems like Sprint is acquiring T-Mobile

"Sprint would pay about $40 a share in cash and stock for T-Mobile, about a 17 percent premium to Wednesday's price, according to the preliminary agreement."

"The deal is sure to face regulatory scrutiny, and the early terms of the deal would include a breakup fee of more than $1 billion that Sprint would pay T-Mobile if the deal is not consummated."

</comment></comment><comment><USER40> Time to crash the FCC's servers again.

</comment><comment><USER41> Wonder what changes, if any, come to the infrastructure, what with Sprint being CDMA and T-Mobile being GSM.

<comment><USER42> That matters less with LTE and VoLTE

</comment></comment><comment><USER43> Sprint and Tmobile are non compatible networks (GSM and CDMA based). Why does this make sense for them?

<comment><USER44> Sprint has some quasi-GSM technology; they acquired Nextel some years back. Nextel utilized the iDEN protocol. iDEN used a time division multiple access (TDMA) network. TDMA is sort of a precursor to GSM. It's small, but there's some overlap.

</comment></comment><comment><USER45> I switched from Sprint to T-Mobile a week ago.

Oh well.

<comment><USER46> If iDEN is any indication, it will take them eight years to merge the networks and by that time your 17-band 6G phone will probably be able to seamlessly bond all the T-Sprint spectrum to provide awesome throughput.

<comment><USER47> And they'll still throttle his data speed after the first 2 gigabytes.

</comment></comment></comment><comment><USER48> Just as long as they keep the unlimited free overseas texting and data, and not raise the prices!</comment>


Schneier on Security: The Effectiveness of Air Marshals - <AUTHOR> http://www.schneier.com/blog/archives/2010/04/the_effectivene.html <comment><USER2> Bringing this over to the issue of computer security, I wonder how the number of viruses quarantined by antivirus software compares to the number of system mishaps caused by antivirus software?

<comment><USER3> or how many CPU-years are wasted by viruses vs. CPU-centuries wasted by anti- viruses.

<comment><USER4> These days, the CPU cycles aren't where we bear the bulk of the cost of malware running on a machine.

<comment><USER3> wdym? proportionally to available computing power, probably yes, malware should be on decline as a percentage. but total should still be growing?

do you mean network overhead? I think funny videos from youtube and pirated material is leader here.

<comment><USER4> I mean the human and economic costs.

The costs of fraud because some malware exposed your passwords. Time spent typing in captchas instead of something useful. Software developers spending time securing their code instead of making useful stuff.

</comment></comment></comment></comment></comment><comment><USER5> So they measure the efficiency of air marshalls in the number of arrests? Hmm.</comment>


Curl.haxx.se is down - <AUTHOR> http://curl.haxx.se/

<comment><USER2> It's been down for me since yesterday afternoon.</comment>


Netflix Uses Pirate Sites to Determine What Shows to Buy - <AUTHOR> http://torrentfreak.com/netflix-uses-pirate-sites-to-determine-what-shows-to-buy-130914 <comment><USER2> Looking at revealed preferences. Smart.</comment>


PC OEM's Refuse To Take The Blame For Soft Windows 8 Sales - <AUTHOR> http://www.maximumpc.com/article/news/pc_oem%E2%80%99s_refuse_take_blame_soft_windows_8_sales123

<comment><USER2> Windows 7 > 8</comment>


Elevator Pitch: Clickpass brings some password relief - <AUTHOR> http://blogs.guardian.co.uk/digitalcontent/2008/03/elevator_pitch_clickpass_bring.html

<comment><USER2> As far as I can tell Clickpass only works with 6 websites. Am I missing something? This is the mother of all chicken-and-egg problems... with no backwards compatibility mode to deal with websites that haven't gone along with a little two-guy startup's big scheme yet. Even Microsoft couldn't pull that off.

Wake me up when it can handle the 200-odd passwords I keep in PasswordSafe for 200-odd websites.

<comment><USER3> They are an OpenID provider, so yes you can use them with the 11,000 or so web sites that support OpenID.

Obviously it's a lot more slick if you set things up their way. This is the opposite of a chicken-and-egg problem. The fact that there are so few web sites on clickpass while it's getting so much attention motivates implementors to work with them. It sure motivated me.

</comment></comment><comment><USER4> There is a very big and rather obvious issue of trust with a solution like theirs. I am expected to entrust them with my passwords, essentially creating a single point of failure for a lot of sensitive information. Sorry, can't do. Not even if they were a spin-off of VeriSign.

The only passwords I am willing to share with them at the moment are those I am finding at BugMeNot :)

<comment><USER5> If you have different secure passwords at every single website and some how avoid email as a single point of failure then Clickpass/OpenID might not be the right solution for you. For everyone else its better then whats currently out there, and we are going to implement further security measures going forward.

<comment><USER4> Email is _not_ a single point of failure as I just explained in another reply and Internet users with rudimental sense of security is _not_ a rarity. I'm afraid the ignorant "everyone else" crowd you are planning to cater to might not be as big as you expect it to be.

Also you are tasking yourselves with handling _confidential information_ , so stating that your "lips are sealed and encrypted" is not good enough. I fail to see how this is "better then whats currently out there". Sorry to be peeing in your punch on a launch day, but you do have a serious problem with a security disclosure.

<comment><USER5> 1\. If your email servers are compromised, than it makes them a single point of failure as most web accounts are accessible through forgotten password procedures.

2\. Most people (66%) of users use the same password on all websites. Which is a far worse multiple trusted party single point of failure. Which is what I meant by "better than whats currently out there".

3\. For services that really require a significantly increased level of security, like banks, it is very easy and likely that further security measures that don't rely on the OpenID provider will be built in on the websites.

4\. It is important to figure out the security issue and make a rewarding web experience than hold up ones hands and decrease data portability and increase friction on the web. We are hoping to help that process along and are very open to suggestions on how we can improve that.

</comment></comment></comment></comment><comment><USER6> If you're in San Francisco today, don't forget to come to the justin.tv office (36 Clyde Street) to see Peter talk about Clickpass. Talk starts at 12:30pm.

If you're not in SF, Peter's talk will be broadcast at <http://www.justin.tv/hackertv>

<comment><USER6> Here's the archived talk: [http://www.justin.tv/hackertv/86574/Peter_Nixey_Clickpass__O...](http://www.justin.tv/hackertv/86574/Peter_Nixey_Clickpass__OpenID_and_how_)</comment></comment>


Fitness trackers are good for health, but that 10k-step goal is overblown - <AUTHOR> https://www.washingtonpost.com/health/fitness-trackers-are-good-for-your-health-but-that-10000-step-goal-is-overblown/2019/07/26/b710bf60-a712-11e9-9214-246e594de5d5_story.html <comment><USER2> Do 12k+ mostly just walking to work from home and back / or when I go out for a beer :)</comment>


Switzerland Network Testing Tool - <AUTHOR> https://www.eff.org/testyourisp/switzerland <comment><AUTHOR> Sadly, switzerland.eff.org:7778 resets connection attempts

[http://sourceforge.net/tracker/?func=detail&aid=3002668&...](http://sourceforge.net/tracker/?func=detail&aid=3002668&group_id=233013&atid=1088569)

<comment><USER2> It looks like you can specify a different server with -s <host>. I'd be more than willing to let it run for a few days so people could test their network (I'm on an academic network I know isn't shaped), but I'm wary of letting any alpha-version network service that needs root permissions run unattended on my laptop.

If there's any interest, I'll run it in VirtualBox and give you guys the ip to connect to. It'd also be pretty easy to set it up on a free aws shard, but there's no telling what they're doing to their traffic so it might defeat the point.

</comment></comment><comment><USER3> Modified: 2009-05-05</comment>


Chinese Border Guards Place Malware on Travellers' Phones - <AUTHOR> https://secalerts.co/article/chinese-border-guards-place-malware-on-travellers-phones/9077cb3a <comment><USER2> What if someone hard resets it after the checks?</comment>


Ask HN: Is there an equivalent to jQuery Mobile in 2017? - <AUTHOR> Yes, jQuery Mobile is still functional, but it's design is a bit clashing since 2012 when most mobile version of websites were using it (and before 100% responsiveness was really a thing).<p>Is there anything, like a mobile-first bootstrap framework of some kind, with the same ease of use that can be chosen today for a prototype/website? <comment><USER2> I built one just for that purpose, www.github.com/websilk/selector</comment>


Ask HN: Any good book for dealing with young adult anxiety? - <AUTHOR> Asking for my sister and a good book will really help. <comment><USER2> The Courage To Be Disliked by Ichiro Kishimi and Fumitake Koga was a book I enjoyed that might help your sister. While it may not specifically address "young adult anxiety", it certainly addresses the topic indirectly from various angles.

Here's the description from Amazon [0]: "The Japanese phenomenon that teaches us the simple yet profound lessons required to liberate our real selves and find lasting happiness. The Courage to be Disliked shows you how to unlock the power within yourself to become your best and truest self, change your future and find lasting happiness. Using the theories of Alfred Adler, one of the three giants of 19th century psychology alongside Freud and Jung, the authors explain how we are all free to determine our own future free of the shackles of past experiences, doubts and the expectations of others. It's a philosophy that's profoundly liberating, allowing us to develop the courage to change, and to ignore the limitations that we and those around us can place on ourselves. The result is a book that is both highly accessible and profound in its importance. Millions have already read and benefited from its wisdom. Now that The Courage to be Disliked has been published for the first time in English, so can you."

[0] [https://www.amazon.com/Courage-Be-Disliked-Phenomenon- Happin...](https://www.amazon.com/Courage-Be-Disliked-Phenomenon- Happiness/dp/1501197274)

</comment><comment><USER3> There's a book called Don't Sweat the Little Things and They're All Little Things, or something like that. My in-law gave it to me thinking I have anxiety, but I don't. I never read it, but maybe it could help.

</comment><comment><USER4> Stopping the Noise in Your Head - Reid Wilson

Get Out of Your Mind and Into Your Life - Steven Hayes

</comment><comment><USER5> Psycho-Cybernetics (Dan Kennedy's version)</comment>


In the Kitchen with Web 2.0 - <AUTHOR> http://gigaom.com/2007/11/16/in-the-kitchen-with-web-20/ <comment><AUTHOR> Who here loves to code and cook?</comment>