HN Time Bartering  - <AUTHOR>

Thought of this when I saw the HN Office Hour project.
It'd be cool to have a barter board where people can trade time/tasks in their own area of expertise for an area of expertise that they need but would rather not pay for.
It might be too clunky to be practical, but in building web apps, where many tasks have a clearly defined "delivery" and there is a history of entrusting tasks to hired developers, it could work.
Another thing it'd be good for is seeking very  personalized advice in a specific niche. Maybe that's an even better use? For people to list their areas of expertise that they're willing to advise others on, along with qualifications?
For me, it'd probably be something like:
HAVE:
-real estate investment experience, especially pertaining to foreclosures(2 years experience, 20 properties bought at auction, 12 sold, 2 rentals)
NEED:
-legal advice on offering seller financing <comment><USER2> So, the first problem is that of the taxman. barter networks have a long history, and courts have consistently ruled that barter doesn't excuse you from paying taxes. If you get big, they /will/ come after you.

I'm not a lawyer, and you'd need to talk to one. But my belief is that if it operated like the current systems, where helping people got you an informal 'reputation boost' and people with good reputations are more likely to get help when they ask for it, the irs wouldn't come after you, because it looks very different from any kind of economic exchange.

Now, I don't know how far you could take the reputation points. could you make actual tradeable carma? would the irs come then? I'm not a lawyer, I don't know. But I'm pretty sure that if you stick to the existing carma/reputation type systems where you get points, formally or informally for helping people, they won't come after you.

eh, I think building cultural norms (and a way of 'keeping score' without being so formal as to arouse the ire of the IRS.) is more important than the technical problem of matching claimed skills.

I think the problem is partially solved by public mailing lists, or things like stackoverflow... people gain a certain reputation. and when someone with a good reputation asks for help, they're more likely to get it.

The problem with all current systems is that they are very focused on one niche. you have your SysAdmin lists, your programmer lists, your designer lists, etc... and a good reputation on one does not always carry to others, which is what needs to happen. I want to, say, give some SysAdmin advice/help and get some design advice/help.

So how would we start an 'open help community' for a wider audience? a community with both SysAdmins and Designers, for instance?

at that point, you have a bigger problem with reputation. Lots of people will give you advice outside of their area of expertise. For instance, I'm a pretty good sysadmin, at least when you care about money. But I'm happy to also ladle out business advice, an area where I have a pretty trivial amount of experience, and not very much success. And look at this post! I'm handing out legal advice, even though I'm wholly unqualified to do that.

Your reputation system needs to be able to deal with that. Another complication is that informal reputations work really well on narrow focus lists. usually 'it takes one to known one.' - I don't know a good design when I see it. The vary thing that makes me bad at design makes it impossible for me to recognize a good designer. But I can spot a good sysadmin from a mile out. It's easy for me to tell between good sysadmin advice and bad sysadmin advice, even if the advice is somewhat above my level. I can tell if it "sounds right" and I know how to verify.

</comment><comment><USER3> I've been thinking about this too - some sort of site that allows high- reputation users from trusted communities access to other highly rated people from other areas of expertise. Eg. if you've got great rep on Stack Overflow, you can join and ask for help from someone with a huge Twitter following. Users with high rep automatically have a lot of credit for getting favours, while new users need to earn credits by doing favours before they can ask for much. Very basic - but still maybe too complicated.

</comment><comment><USER4> I started a project to find me relevant resources while I'm in college. So far it has worked well among friends, even for it being a prototype. My project is a match engine, not a board, and you could say both have their weaknesses and advantages. Whatever HN does, I think the OP is along the right track.

Here it is: <http://pickupon.com/>

(Also, if anyone does see this, let me know if it is "Ask HN" quality.)

<comment><USER5> You'd really benefit by letting people know what this site does. It isn't immediately obvious, and it usually doesn't make sense to have the user presented with a login without any content (if ever). The docs also seem pretty long at first glance. Just a paragraph or so about the goal of the site right on the landing page would help a lot I think.

<comment><USER4> Thanks for the thoughts. The reason for its lack of sensational front page glamour and glitter is that there has been no reason for it so far (academic endeavors hardly do; we have only provided an RTFD link sadly).

It's simply a resource exchange tool where you input haves and wants and we output a set of matches of mutual relevancy, where each user "picks" from predefined item/skill options users set.

The types of uses are many but for clarity's sake: barter, share, product testing, borrow, and various types of skill exchange.

I apologize for my glaring lack of bravado or salesmanship. However, on the other hand, the service is free.</comment></comment></comment>


Brave browser to block fingerprinting with randomization - <AUTHOR> https://nakedsecurity.sophos.com/2020/03/11/brave-browser-to-block-web-fingerprinting-with-randomisation/ <comment><USER2> It's a bit of a shame the article failed to mention the browser which started implementing various fingerprint resistance techniques many years ago -- the Tor Browser Bundle. Unlike Brave they don't randomise your fingerprint, they make all of their user's fingerprints look the same. We'll have to see how effective the randomisation technique is, but I'd be worried that statistical analysis (even something a simple as averaging) would result in the real fingerprint being uncovered.</comment>


Were Kyiv Winters as Snowy as I Remember as a Kid? - <AUTHOR> https://observablehq.com/@mourner/were-kyiv-winters-as-snowy-as-i-remember-as-a-kid <comment><USER2> I think the city name bullying began with Peking -> Beijing and Bombay -> Mumbai.

Did you know that the French name for London is Londres? And has been for hundreds of years?

I don't see why we can't keep Kiev. If you write it in Russian, spell it any way you want, but keep your mitts off of English.

<comment><AUTHOR> You are either colossally misinformed on the issue of Kyiv vs Kiev and the way geographic name spellings are formed, or use this deliberately as an outlet for colonialist sentiments. I hope it's not the latter.

"Kiev" is not an English word. It's a transliteration of Russia's spelling of the city name, back from the times when Ukraine was a part of an oppressive dictatorship that killed millions of Ukrainians (Soviet Union). Ukraine is now an independent country with Ukrainian as its official language (and has been for three decades, and it fought for this right for centuries). Kyiv is a direct transliteration of the city name from Ukrainian. It has now been adopted by governments & major media across the globe. If you don't like, deal with it.

<comment><USER3> Please don't take HN threads further into nationalistic flamewar, regardless of how bad another comment is or you feel it is.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)</comment></comment></comment>


NSQ: Realtime distributed message processing at scale (in Go) - <AUTHOR> https://github.com/bitly/nsq

<comment><USER2> Was something like MQTT investigated prior to re-inventing the wheel with NSQ? From a cursory examination, I don't see any major advantages other than nice UI tools.

The wire protocol seems more complicated -- why distinct protocols for producers and consumers? Linebreak-delimited headers are error-prone and ought to be banished. Why transmit the hostname with sub requests -- is another system requesting jobs on behalf of workers?

Then the topic/channel distinction seems artificial when wildcards would suffice (and provide much more flexibility), eg topic/*/channels or topic/channels/# in the MQTT parlance. MQTT also has more fine-grained delivery guarantees via its QoS levels. All this with a header structure that's as small as two bytes.

edit: While MQTT is pubsub, as long as the system is under your control, you're free to change the semantics at the broker side from "broadcast messages to all consumers" to "rotate messages among consumers."

<comment><AUTHOR> one of the developers here...

The protocols that exist in NSQ now are designed to be the simplest implementation that worked.

You've correctly pointed out some of the issues. At this stage, the distinction of producer vs consumer was mostly so that you could publish _at all_ without having to use the HTTP interface. For our use cases, in particular taking advantage of the /mput endpoint, we aren't even using the TCP based publishing protocol.

Re: your point on sending metadata with SUB commands. I agree its a bit ugly. We actually intend on improving that aspect by instead sending the data in the form of an IDENTIFY type command upon initial connection. That information is used in the various administrative UIs and endpoints.

I'm going to do a bit more reading on MQTT, thanks for the link.

<comment><USER3> I'm really curious to know why would you build this tool instead of using, say, RabbitMQ?

DISCLAIMER: I wrote the RabbitMQ in Action book.

<comment><AUTHOR> We looked into AMQP based solutions. Our understanding is that slaving, master-slave failover, or other strategies are used to _mitigate_ the fact that there is a broker responsible for a given stream of messages.

We wanted a brokerless, decentralized, and distributed system. NSQ has no broker or SPOF so it is able to route around failures.

That said, I think RabbitMQ is a good tool depending on your requirements. I can imagine a broker proving useful in situations where you may want strict ordering or no-duplication. Those were tradeoffs we were willing to make for fault tolerance and availability.

Also, given the fact that we were already operating infrastructure built on simplequeue (which is also distributed and brokerless) we found it more appealing to evolve rather than replace.

<comment><USER4> Master-slave etc are HA techniques for replicating state eg queues (or "channels" as nsq calls them?). "Decentralized and distributed" has nothing to do with state, master/slave or any of that; it's a topological property of your system. You can certainly build a decentralized and distributed system using a set of brokers, regardless of whether they support HA.

<comment><AUTHOR> That's fair, you certainly can use rabbitmq in a distributed and decentralized fashion.

You bring up an important point though... What is important is the topology we're promoting and the platform we've built to support it. The actual queue is less important and it made sense for us to own that piece to achieve our goals.

<comment><USER4> So, why not just deliver that topology using off the shelf components? Rabbit, Kafka, ZeroMQ, ... the toolbox is deep. This is not meant as a criticism, I am simply trying to understand what I am missing when I look at your design :-)

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> We're currently using Apache Kafka which is working out great, but does include a broker as a middleman. This is good for us since it's designed to accumulate unconsumed data (or even roll it back) and still provide good performance - rather than having that happen on the producers or consumers.

It would be cool to see some stats on throughput and latency relative to # of producers / consumers and amount of data currently accumulated in the producers (since there is no middleman).

</comment><comment><USER6> _This ensures that the only edge case that would result in message loss is an unclean shutdown of an nsqd process. In that case, any messages that were in memory (or any buffered writes not flushed to disk) would be lost._

I don't understand how you can call it a message delivery "guarantee" when you're susceptible to losing messages when a node dies.

 _One solution is to stand up redundant nsqd pairs (on separate hosts) that receive copies of the same portion of messages._

OK, delivery is only guaranteed if I run multiple independent sets of NSQd and write messages to both.

Regardless, it looks like an interesting project.

<comment><USER7> How would you design a system that didn't have this problem at the individual node level?

<comment><USER8> Sequence numbers on messages sent by producers coupled with some sort of persistence by the sender. This way when a gap is detected some sort of resend protocol can be implemented to achieve the delivery guarantee.

<comment><USER7> So the sender just keeps trying until it gets an ACK. Fair enough, though I imagine you'd want to run multiple nodes even with this.

<comment><USER8> Correct. Reliability and Availability are two separate but related goals.

</comment></comment></comment></comment></comment><comment><USER9> I love seeing how people tackle these sorts of problems. Here, the trade-off is duplicate messages reaching a client. I know others have tried a no-"ack" approach. I'm still working in the land of RabbitMQ solving all my business needs and I like it.

I'd love to see some numbers, reasons for decisions made, and suggested best practices for this solution other than "manual de-dupe."

<comment><USER10> Some of the background behind our decisions are on our blog post <http://word.bitly.com/post/33232969144/nsq>

In terms of manual de-duping, we strive internally for idempotent message processing so it's fairly irrelevant, but to handle cases where it matters, all of our messages have unique id's added to them outside of NSQ.

The actual cases where messages are handled multiple times is limited to when a client disappeared during message processing (a hard restart) or it passed the allowable time window to respond and was given to another client.

If there are any specific numbers you are curious about, please ask.

<comment><USER3> When people say "billions of messages per day" do they realize that 1 billion messages =~ 11500 msgs/sec ? RabbitMQ as well as any self respecting message broker is able to handle that on a single machine

</comment></comment></comment><comment><USER11> It's kind of like Storm. I'd love to see a comparison written by the authors.

<comment><AUTHOR> Agreed, a comparison would be helpful for highlighting the tradeoffs behind the choices we made.

We do talk about the evolution of our infrastructure and the genesis of NSQ in our blog post, <http://word.bitly.com/post/33232969144/nsq>.

</comment></comment><comment><USER12> Hey it's awesome to see you guys tackling a larger project in Go. I've been writing some smaller services/tools with it in my day job, and I like it a lot.

Thanks for sharing your work.

</comment><comment><USER13> How does this compare to ZeroMQ?

<comment><USER14> ZeroMQ is a library, it is embedded in the application code and can support a peer-to-peer messaging topology. It also has support for Broker patterns but you have to develop the Broker application yourself; you could build a solution such as this one using it, but the zmq library itself really handles lower-level concerns with a high degree of flexibility but no out-of-the-box functionality. zmq can be thought of as something as simple as an improved socket library but with support for async, storing & high-water marks when there are no attached consumers, various distribution strategies, queues and lots more.

<comment><USER13> Right, I guess my question more specifically is: ZeroMQ allows you to built applications like this in (seemingly) just a few lines of code. Did you guys consider building it on top of ZeroMQ, and if so, what made your decide to not use it? Nothing against what you've built btw, it looks great, but am just curious

<comment><AUTHOR> The truth is we wanted to use ZeroMQ initially. It would have been really awesome to have all that flexibility on the client side.

The ZeroMQ documentation is fantastic as well. It inspired and helped shape some of the design choices we made.

The further along we got from design to implementation it became obvious that it would be important to "own" the socket. Generally speaking, this is exactly what ZeroMQ prevents you from doing (and rightly so, it aims to abstract all of that away).

The choice to use Go had an impact here as well. Language features like channels and the breadth of the standard library made it really easy to translate our NSQ design into working code, offsetting the benefit of ZeroMQ's abstractions.

<comment><USER13> Makes a lot of sense, thanks for sharing!

</comment></comment></comment></comment></comment><comment><USER15> I'm too lazy to install Go just to try this (I would need to, right?) but reading through the docs this looks far more appealing to me than tent.io. Nice work, at least with respect to the general design. Flexible.

<comment><USER10> Thanks for the reminder. Getting binary builds up is on our to-do list, so check back soon for those.

In the mean time, installing Go is pretty easy (you can use brew, or the official OSX package (assuming you are on OSX) <http://golang.org/doc/install>) and we've tried to leave clear steps for building NSQ here <https://github.com/bitly/nsq/blob/master/INSTALLING.md> (there really are very few dependencies other than go itself)

<comment><USER15> Cheers. I have installed Go before and messed around with it. I agree it's pretty good as far as being self-contained and straightforward. I just don't have the energy to keep chasing a moving target. For my purposes, I'm more interested in stuff that is stable and rarely changes.

If you can produce binaries for UNIX (Linux, BSD, etc), OSX and Windows, I'll be impressed. That's something I was interested in doing with Go (is it possible to cross-compile?) but never managed to learn.

<comment><USER16> Since the Go1 release, Go is not a moving target anymore. Stable releases are rare and there are binary packages available if you are so inclined.

Go compilers, being derived from Plan 9, are always cross compiling. To cross compile you just set and export GOARCH and GOOS to your target, for example:

      GOOS=windows GOARCH=386 CGO_ENABLED=0 go build foo.bar/baz

Would build foo.bar/baz for 32 bit Windows from any system that has Go and ran make.bash --no-clean with those variables set. More interesting is building for ARM:

      GOOS=linux GOARCH=arm CGO_ENABLED=0 go build foo.bar/baz

</comment></comment></comment></comment><comment><USER17> We use ActiveMQ at work and are investigating other MQs too. I dont see any info or performance graphs w.r.t message size. That would be a useful addition.

<comment><USER10> Good idea, we will try to put together some numbers with regards to message size.

</comment></comment><comment><USER18> Anyone at Disqus care to weigh in on this?

</comment><comment><USER19> Interesting if bitly guys had a look at beanstalkd before implementing nsqd.

<comment><AUTHOR> beanstalkd is a great project and it certainly inspired some of our thinking. I think of beanstalkd as a more fully functional alternative to simplequeue (what we built/used prior to NSQ - more details in our blog post <http://word.bitly.com/post/33232969144/nsq>).

Some of the goals of NSQ transcended just replacing our specific daemon that buffered and delivered messages (most importantly the interactions with the lookup service). Because of that, we felt that owning that piece would make it easier to achieve those goals.

Additionally, one of the most important properties of nsqd (the queue component of NSQ) is that data is pushed to the client rather than polled (like in beanstalkd).

</comment></comment><comment><USER20> Where is the guy with the comment about generics? Disappointing.

</comment><comment><USER21> Does this have gob interface?

<comment><AUTHOR> it is data format agnostic so you can certainly serialize using the gob package.

<comment><USER21> Amazing, with this my whole infrastructure will be 100% Go.</comment></comment></comment>


Tetra for iOS - my new Letterpress-inspired board game app - <AUTHOR> https://itunes.apple.com/us/app/tetra-board-game/id648252454?ls=1&mt=8

<comment><USER2> I'd say it's more that inspired by...

<comment><AUTHOR> s'ok - I showed Loren before it launched, and he was cool with it :)

<comment><USER3> for the sake of your own brand, I'd iterate that design so it doesn't look like a carbon copy. Either people will assume you ripped him off, or that it's another of his games, not yours.

<comment><USER4> I agree. Especially since you've copied another existing game (Quarto). Which is fine, I guess, but at the moment you've copied someone else's game and copied someone else's style... Your unique idea is bringing these two elements together, which is good, but in the future I might suggest copying Loren on a deeper level: Create both your own interesting presentation style _and_ a clever new game mechanic to go along with it.

</comment></comment></comment></comment><comment><USER5> How is this game different from Quarto [1]?

[1] [http://en.wikipedia.org/wiki/Quarto_(board_game)](http://en.wikipedia.org/wiki/Quarto_\(board_game\))

<comment><AUTHOR> It's not :) It is an app version of the same game. You're the first person who has made that connection in months of beta testing and showing people the app. I'm sure other people will recognize it as well, but I don't think it's as recognizable as was, say, Words With Friends was an app version of Scrabble.

<comment><USER5> Quarto is a great game, and I think it's well suited for an app like this where you can take your time thinking about your turn. However, it would be nice to give the game designer some credit.

<comment><AUTHOR> That's true. I'll add some credit to the app and website on the next rev.

</comment></comment></comment></comment><comment><USER6> Cool game, nicely done!

It wasn't that clear to me that I could play more than one game at a time though, might want to make it clearer. It's been a while since I played letterpress, but I recall I had dozens of games going at once there.

</comment><comment><USER7> Wish it didn't require iOS 6. I don't upgrade my iPad after previous updates made it slow.

<comment><USER8> Usually, apple tries to improve firmware speed after they add features. I found that staying updated is the best policy.

<comment><USER9> Unless you're trying to run iOS 7 on the iPhone 4 or iOS 6 (or was it 5?) on the 3G.

There are definitely times where it DOES NOT END WELL even though the device technically supports the upgrade.

A better policy is to wait for reports and then upgrade after a few weeks if they're positive.

<comment><USER10> It was the iOS 4 update that practically killed my 3G. Everything became too slow to bear. If it wasn't for the great work of the jailbreakers, i wouldn't have been able to get back to iOS 3.

</comment></comment></comment></comment><comment><USER11> Does this app share any code with Letterpress or did you re-create the UI elements/interactions?

<comment><AUTHOR> No code was shared. I wrote my own UIKit layer to accomplish the UI (whereas Loren used a 100% OpenGL implementation for Letterpress).

<comment><USER12> I think that is probably a sensible way of doing it - it did seem a bit extreme that Letterpress is pure OpenGL. How much do you rely on QuartzCore/Core Animation rather than regular UIKit animation?

<comment><USER13> I think in an interview Loren said he wrote it in OpenGL for his own fun. Haven't we all done that? It's extreme, but it's very good at providing a lot of rich control, but with iOS7 a lot of fancy tricks he did will be pretty simple so I'd imagine that it was a one off.

<comment><USER12> I must admit I have done that, however I never really extended it very far. I think I was just trying to animate really complex bar charts really quickly.

</comment></comment></comment></comment></comment><comment><USER14> Game looks awesome. I'm glad to see that you got everything put together and out there :).

</comment><comment><USER15> A little too "inspired"

</comment><comment><USER16> What do you get with the $1.99 upgrade ?

<comment><AUTHOR> You can play more concurrent games and change themes (color schemes) in the app. The free version lets you have 2 concurrent games and use the basic theme.

<comment><USER17> I wonder where that idea came from...

</comment></comment></comment><comment><USER18> Nice work, chad!</comment>


Ecuador Arrests Former JRuby Core Developer - <AUTHOR> https://www.theguardian.com/media/2019/apr/12/julian-assange-ecuador-arrests-man-with-alleged-links-to-wikileaks <comment><USER2> Although I don't know what Ola Bini has exactly done (no details in the article) and if he is guilty of anything, but the phrase:

"We have sufficient evidence that he was collaborating in attempts to destabilise the government."

sounds strangely familiar to me. I lived long enough under totalitarian communistic regime where almost exact wording was typically used to justify arresting members of the opposition.</comment>


Creating Tiny Desktop Apps with Tauri and Vue.js - <AUTHOR> https://www.smashingmagazine.com/2020/07/tiny-desktop-apps-tauri-vuejs/ <comment><USER2> I'm confused. How can a full HTML/CSS/javascript engine fit in 600KB? It is not clear to me from the article.

Edit: It uses the OS-native engine [https://github.com/tauri- apps/tauri](https://github.com/tauri-apps/tauri)

</comment><comment><USER3> If it uses the OS-bundled web browser what is the benefit of this over a PWA?</comment>


How do you sell an idea to an established company? - <AUTHOR> Maybe there's an untapped revenue source for a product that would require little to no investment from the company, and you'd like to suggest it to them while retaining credit/ownership of the idea?<p>As in, if I pitched an idea to a company, how do I ensure that if they use it, there's an agreed-upon payment structure and they don't just use it anyway and say fuck off? <comment><USER2> I think it unlikely that you can get money or credit/ownership from them for an idea - at least not without spending money on patents and lawyers to enforce that patent.

Basically, ideas are worthless without execution. Now if you can make a _product_ that performs this improvement you might be able to license it to them. I created and licensed some software to a company once.

</comment><comment><USER3> You don't. I've never heard of this happening.

</comment><comment><USER4> Ownership of an idea is not really a thing, unless it's patentable. You have zero leverage in this situation.

</comment><comment><USER5> Get hired as contractor not saying first your oryginal idea but pitch them improvements on existing process</comment>


Show HN: Contact Dashboard. The no Internet, Internet - <AUTHOR> https://github.com/usermac/contactdashboard

<comment><AUTHOR> Author here. To see a video of it working go here: [http://contactdashboard.com](http://contactdashboard.com)</comment>


GhostNet - <AUTHOR> https://en.wikipedia.org/wiki/GhostNet <comment><USER2> Have these targets ever given consideration to not keeping their secrets on a computer directly connected to the Internet?</comment>


Software Startup Lessons (Part 1): The Basics - <AUTHOR> http://blog.lavablast.com/post/2008/03/Software-Startup-Lessons-(Part-1)-The-Basics.aspx

<comment><USER2> "Additionally, we sidelined as male strippers at bachelorette parties, to pay for our university studies."

i don't think i've had a sentence in a news.yc-posted article take me more by surprise :)

</comment><comment><USER3> The title sounded intriguing but the colors and size of your text turned me off immediately. Hopefully it's just my old eyes.</comment>


Orbit.js – A standalone library for data access and synchronization - <AUTHOR> https://github.com/cerebris/orbit.js <comment><USER2> We really need a library/software name registry of some form.

[http://foundation.zurb.com/docs/components/orbit.html](http://foundation.zurb.com/docs/components/orbit.html)

<comment><USER3> [domain]-descriptor-[giberish]

In this case: js-synchronized-orbits

Or, renamed for the JavaScript pattern: SynchronizedOrbit.js or orbsync.js

If we all followed this pattern, it would be nice to then have a registry for [domain]-[giberish] pairs, but really we can get away without one for a very long time.

A few examples: Django-registration becomes django-registration-valet Django- Facebook becomes django-facebook-elite Django-zebra becomes django-stripe- zebra (they have the giberish part but are hard to discover by googling the problem because they don't have the descriptor)

</comment></comment><comment><USER4> Kinda cool, but an example of when something like this is necessary would be nice.

The docs should start with: Why do I need this?

<comment><USER5> Hi, I'm the developer of Orbit, which I created to enable advanced features in client-side apps such as offline mode, synchronization of local caches, undo / redo stacks, and ad hoc editing contexts. These features require a systematic approach to accessing and transforming data in multiple data sources.

Stay tuned - I'm currently working on an introductory blog post as well as detailed docs and an example app.

 _Edit:_ I just updated the readme with essentially the same use cases I mentioned above.

<comment><USER6> Maybe you should consider naming it differently, as my first thought was that it has something to do with Zurb's Orbit.js

<comment><USER5> I've had this name and concept kicking around in my head for over two years. "Orbit" seems a catchy metaphor for effortless relationships between data sources.

I'd hoped there wouldn't be confusion with a component in such a different domain (image slider vs. data), but I will consider a rename if that proves to not be the case.

<comment><USER7> Fwiw, ZURB's Orbit was my first thought too, and mattdeboard is right that changing the name will only get harder not easier.

That said, it's probably also the case that most of us will just make note of the fact that there are two Orbit.js's now and qualify which one we're referring to when needed.

</comment></comment></comment></comment></comment><comment><USER8> Pretty cool stuff! I think it's great that this lib is designed with extensibility in mind rather than being tightly coupled to any particular data store. I can see this being very useful for offline sync and reactive UI projects.

</comment><comment><USER9> Love it! I actually developed an ad-hoc version of this for use in a personal project (I was syncing to local IndexedDB, the local browser's Filesystem API, and a server endpoint), and would have loved to have had this already.</comment>


Google To Go Nuclear - <AUTHOR> http://techcrunch.com/2010/03/31/exclusive-google-to-go-nuclear/

<comment><USER2> For about 10 seconds I believed this. Given their power needs it would be a reasonable move to get into power generation technology, and nuclear would be the nerd's choice.

<comment><USER3> FWIW, they're already doing solar:

<http://news.cnet.com/8301-10784_3-5749586-7.html>

[http://www.jasonmorrison.net/content/2009/touring-googles- so...](http://www.jasonmorrison.net/content/2009/touring-googles-solar-panel- installation/)

</comment></comment><comment><USER4> _Nuclear is an obvious next step for the company._

An early start on April Fools day?

<comment><USER5> It's already April 1st in Australia; so I'm going to go with yes.

</comment></comment><comment><USER6> Google replies: <http://blog.google.org/2010/03/gooey-googley-energy.html>

</comment><comment><USER7> What strange article. I find it reasonable that Google might want to experiment with small nuclear reactors. Then the author goes off into imagination land suggesting that Google might colonize and become and independent nuclear armed nation which would need Mutually Assured Destruction against China. Seriously strange.

</comment><comment><USER8> Google has been considering going nuclear since at least 2006:

"Should Google Go Nuclear? Clean, cheap, nuclear power (no, really)" <http://video.google.com/videoplay?docid=1996321846673788606#>

Granted, other than the title they've chosen for the video, there isn't a focus in this video on Google actually adopting Nuclear energy. But they were clearly trying to start changing the perception of nuclear energy as far back as 2006.

</comment><comment><USER9> _To be clear, most of this is speculation. All we've confirmed is that Google has acquired a company with a new enrichment process and that they have begun researching small, nuclear portable generators._</comment>


Simplicity and Utility, Or, Why SOAP Lost (2014) - <AUTHOR> http://keithba.net/simplicity-and-utility-or-why-soap-lost <comment><USER2> We could never get our SOAP systems to interoperate. In one case, we had a Java server, that the Python SOAP library were were using couldn't understand, so we ended up interposing a Perl program that could handle the Java SOAP output and convert it to something Python could follow.

In another case, the server (running on Windows, don't know the implementation language) returned a DIME message (Direct Internet Message Encapsulation; see [https://msdn.microsoft.com/en- us/library/aa480488.aspx](https://msdn.microsoft.com/en- us/library/aa480488.aspx) ) for one of the API calls. Why? Because it attached a "binary" file ... which happened to be a text-based document that could easily have been XML-escaped and included in a SOAP response.

This might be fine if both sides of communication were using an enterprise-y SOAP library from MS or IBM that implemented all the bells-and-whistles, but we were using Python, and the SOAP packages for Python didn't understand DIME.

DIME wasn't a hard system to support, so we ended up writing our own parser for it. Still, it was annoying.

This lack of real interoperability left a bad taste in our mouth for using SOAP in a heterogeneous environment with many different SOAP libraries.</comment>


A Brief History of Just-In-Time (2003) [pdf] - <AUTHOR> http://eecs.ucf.edu/~dcm/Teaching/COT4810-Spring2011/Literature/JustInTimeCompilation.pdf <comment><USER2> Nice paper, actually quite interesting references all the way back to the genesis of JIT implementations.</comment>


Why California Per Capita Energy Use Flat While Rest of U.S. Has Increased 50% - <AUTHOR> http://paid.outbrain.com/network/redir?key=5589f5c1f151162c60d823f0f4a4d829&rdid=593962395&type=DPY_A0/NA_la&in-site=false&idx=1&pc_id=16149551&req_id=04952fe00a0dfa20f5a9b05466268bcd&agent=blog_JS_rec&recMode=7&reqType=1&wid=101&adsCats=1703,1207,1210&refPub=185&prs=true&scp=false&fcapElementId=18568&origSrc=1053273

<comment><USER2> Is this just a paid blog post for PG&E?

My power costs 3x what it did in Virginia because of tiered pricing based on square footage. That's all that keeps my power usage in check</comment>


Bicycle Helmets Reduce the Risk of Serious Head Injury by Nearly 70 Percent - <AUTHOR> https://www.theguardian.com/lifeandstyle/2016/sep/22/bicycle-helmets-reduce-risk-of-serious-head-injury-by-nearly-70-study-finds <comment><USER2> Australians also found that "energy absorbing headwear for car occupants might be effective in reducing the numbers of head injuries sustained by car occupants." \- [https://infrastructure.gov.au/roads/safety/publications/2000...](https://infrastructure.gov.au/roads/safety/publications/2000/Protect_Head_3.aspx) .

Hence the old question, if serious head injury in cyclists is a problem which warrants mandatory helmet use, is serious head injuries for car drivers and passengers also a problem which warrants mandatory helmet use?

See also [http://www.copenhagenize.com/search/label/%22motoring%20helm...](http://www.copenhagenize.com/search/label/%22motoring%20helmet%22%20%22car%20helmet%22) .

The paper is paywalled. I can't tell if it addresses the population shift which occurs when helmet use is mandatory, that is, some people won't use a bicycle if required to wear a helmet. (As a simple example, someone who spent a hour on hairdo for a party is not going to crush it with a helmet.) The Guardian writes "16.5% of people say they would ride more often if they were not required to wear a helmet at all times".

I ask because the usual observation is that high-speed cyclists wear a helmet, while low-speed cyclists (like me) are less likely to do so. I bike slower than a fast marathon runner, much less a sprinter, and figure there's a good evolutionary reason for the brain to be protected from falling at that low speed.

If helmet laws shift the population to those who tend to cycle faster, which is also where helmet protection is more effective, then this metaanalysis may only mean that those who cycle quickly should wear a helmet.

</comment><comment><USER3> It'd be interesting to see if the reaction against this kind of legislation varies depending on whether the country in question has mandatory motorcycle helmet law. I've been riding motorbikes for 30 years, and would never ride without a good full face helmet, but I've only fallen off twice (both times at low speed). I've fallen off my mountain bike many more times than this, but I'll be honest, I didn't wear a helmet every time I rode until I had kids, and felt I need to set a good example for them; indeed I'm surprised at the stats for injury prevention as I've always felt that typical cycle helmet designs wouldn't protect much of your head, but that is clearly wrong.

I'm not entirely convinced by the wearing of the typical bike helmet leading to increased risk-taking; I could see that with a full face one (as it gives you a real feeling of being protected), but with the normal ones I don't think it gives the same feeling at all. FTR I can't find a full-face helmet for cycling that fits - I have an enormous head - at anything other than insane prices - £300+!

</comment><comment><USER4> Relevant: [https://www.youtube.com/watch?v=jHxyP- nUhUY](https://www.youtube.com/watch?v=jHxyP-nUhUY) TLDW: The brain is very soft</comment>


Why I bill daily - <AUTHOR> http://alanhollis.com/why-i-bill-daily/

<comment><USER2> I think eventually you will not think this is as good of an idea as you do currently. There is a sweet spot for billing, just like anything else: somewhere between too often and too much. Just my 2p.

<comment><USER3> Care to elaborate? I don't feel like I'm billing too often (I send invoices once a month), and I'm not sure what you mean by too much?

<comment><USER2> (1) The main advantage you get from setting your rate daily is that you will attract employers that see this as a way to eek more hours per day out of you. You can choose not to work with employers like this, but you won't actually know they will do this until they do it. In the end though, that is your time, and your rate goes down if you work more for the same amount.

(2) You will frequently work less than a day and charge for a day. This will of course keep some employers from hiring you, because they'll worry about your higher effective rate that what they would calculate for an 8 or even 6 hour day. But, let's say that they hire you. At some point, you'll send an email stating that you are done with the feature earlier in the day rather than later, because you have somewhere to be that night and don't want to forget, and then this puts the seed in their head that you didn't work a full day, and that for all they know, you may do that everyday with them if they aren't communicating with you all day to determine you are working for them.

(3) Although potential employers may attempt to do the math and convert what they perceive as your hourly rate based on your daily rate to what they get out of other hourly workers, much of the time, they won't want to bother. If anything, if I were trying to estimate your hourly rate, I'd divide your daily rate by 4 and assume that is basically your effective rate. And that is probably not right.

Then there is the whole thing about the perceived amount on your bill. It may seem higher if they see your daily rate vs. an hourly rate, even if it is less.</comment></comment></comment>


Does BitTorrent = Piracy? - <AUTHOR> http://www.doesbittorrentequalpiracy.com/

<comment><USER2> Yes, but what is the probability that a byte is for piracy given the fact that it sent over BitTorrent?

</comment><comment><USER3> I've found bittorrent to be an effective way to quickly download ISOs of free operating systems.</comment>


Don't Call Me Bono… These Here Are Computer Glasses - <AUTHOR> http://blog.imulus.com/george/opinion/dont-call-me-bono-these-here-are-computer-glasses/

<comment><USER2> I personally wear contacts for my pitiful eyesight; even getting 12" away from the monitor, I can't read anything without my contacts, even with Firefox on highest magnification. With correction, I have 20/25 vision, but I still sometimes get eyestrain and can feel my eye muscles going limp/lazy/cross-eyed when I'm staring too much at a monitor or TV, and I wonder if perhaps these sort of glasses might help.

However, I didn't quite grasp what the glasses actually did for him, or what they offer to the wearer; is there a better explanation someone wants to offer?

<comment><USER3> I'd like to hear an answer to this, too. Could it be the magnification? Basically, do these things just work like very low-power reading glasses (say, +0.25)?

</comment></comment><comment><USER4> Get a special prescription if you already use eyeglasses. And you won't have to make inadvertent fashion statements.

I have had computer prescription eyeglasses for over five years now. They are a variation on your standard prescription that you can get from your eye doctor. They have helped stabilize my worsening eyesight. I highly recommend that if you stare at a screen all day long to at least consider investing in a pair and using them. Don't take your eyesight for granted.

My eye doctor also recommended the 20-20-20 rule - every 20 minutes look at least 20 feet away for at least 20 seconds. It helps unfocus your eyes and you know how quickly 20 minutes can go in a coding binge.

<comment><USER5> I also got prescription computer glasses a few months ago after using non- prescription reading glasses. They seem to work well, and I paid extra to get the anti-reflective coating too. I spend 8-16 hours a day staring at computer screens. I wish that my boss would replace the ancient 21-inch CRT displays on my desk at work with a flat screen LCD--even with good glasses, the displays are fuzzy (and I'm sure it's the displays and not my eyes now.)

</comment></comment><comment><USER6> Argh, everything will look blue after wearing those.</comment>


Elon Musk says 'pedo guy' tweet did not suggest cave diver was a pedophile - <AUTHOR> https://www.reuters.com/article/us-musk-lawsuit-idUSKBN1W12BP <comment><USER2> Does Musk not have lawyers? How did they let him release a statement calling the person suing him for defamation a "creepy old man?" That's further defamation!

This statement hasn't at all helped the situation. Musk should settle ASAP. The original tweet(s) in context are completely untenable and this _defense_ has only further worsened the situation for Musk.

Musk falsely calling him a "child rapist" to Buzzfeed News based on an erroneous private investigator report only worsens the circumstance, as do Musk's tweets effectively claiming it was true unless a lawsuit for defamation was conducted.

If I was on a jury, and there's no proof these claims are factually true, Musk is losing every time.

<comment><USER3> His lawyers AFAIK were fighting the defamation suit claiming it's protected speech, free speech - it's his opinion, and that no one would genuinely believe that Elon has some special knowledge that any reasonable person would believe was a statement of truth; I certainly didn't think Elon had any credibility to that statement, it just made him look like he was having a temper tantrum.

Not sure why he's no longer sticking to that narrative or if his lawyers have changed their narrative too?

<comment><USER4> Someone needs to tell his lawyers the 1st amendment protects you from the government, not from getting sued for defamation.

<comment><USER5> The first amendment does protect you from being sued (legal judgements are government action), but the scope of that protection in the case of defamation may not be as broad as Musk wants it to be.</comment></comment></comment></comment>


Dotdotdash, a morse keyboard - <AUTHOR> http://carlos.bueno.org/dotdotdash/ <comment><USER2> In morse code, one never breaks up the characters like this keyboard does. All characters are made up of combinations of DIT and DAH, not DIT, DAH, DIT DAH, DAH DIT.</comment>


[Show HN] SimpleCoffeeClub.com - <AUTHOR> https://SimpleCoffeeClub.com/ Hey guys,
CJ here Co-Founder of Simple Coffee Club!
This is a project we have been working on for about a month now.
A bit about me, coffee has been a passion of mine for years and years. I have a background in web design, I love long walks..... you get it.
After reading 100s of articles about business, I finally realized to be successful in business you truly have to do what you love.
But to cut to the chase, we are looking for any type of feedback both negative and positive. <comment><AUTHOR> Hey guys,

CJ here Co-Founder of Simple Coffee Club!

This is a project we have been working on for about a month now.

A bit about me, coffee has been a passion of mine for years and years. I have a background in web design, I love long walks..... you get it.

After reading 100s of articles about business, I finally realized to be successful in business you truly have to do what you love.

But to cut to the chase, we are looking for any type of feedback both negative and positive.

</comment><comment><USER2> Are you considering a/b testing your sign up form?

Not too long ago on HN there was an article about how the Obama web team converted their forms into multi-step forms and noticed an increase in conversions.

Maybe add a picture showing what is delivered to your door every month?

Just a thought.

Good luck guys!

[http://kylerush.net/blog/optimization-at-the-obama- campaign-...](http://kylerush.net/blog/optimization-at-the-obama-campaign-ab- testing/)

<comment><AUTHOR> Yes A/B testing is on our plate for the future. I first heard about it from a patio11 aka Patrick McKenzie podcast.

Currently we are in what we consider our MVP stage. I would like to see 10 signups before we quit our day jobs. :P

But thank you for the link and advice :)

That article just goes to show that testing and data are king.

I personally don't like multi-step signup forms and that is the only reason it is not one. But soon enough I will start rocking out some A/B testing.

Have you played with <https://www.optimizely.com/> by chance? If so how was your experience?

</comment></comment><comment><USER3> reminds me of tonx. good luck guys!

<comment><AUTHOR> Thank you for bursting the comment cherry!

We are a little different from tonx but the idea is the same :)

They source and roast beans while we work hand in hand with already established local roasters.</comment></comment>


£7,700 ($13,000) machine promises to brew the 'perfect' cup of tea - <AUTHOR> http://www.bbc.co.uk/news/technology-27243269

<comment><USER2> "No," Arthur said, "look, it's very, very simple…. All I want… is a cup of tea. You are going to make one for me. Now keep quiet and listen."

And he sat. He told the Nutro-Matic about India, he told it about China, he told it about Ceylon. He told it about broad leaves drying in the sun. He told it about silver teapots. He told it about summer afternoons on the lawn. He told it about putting the milk in before the tea so it wouldn't get scalded. He even told it (briefly) about the East India Trading Company.

"So that's it, is it?" said the Nutro-Matic when he had finished.

"Yes," said Arthur. "That is what I want."

"You want the taste of dried leaves boiled in water?"

"Er, yes. With milk."

"Squirted out of a cow?"

"Well in a manner of speaking, I suppose…"

"I'm going to need some help with this one."

\- Douglas Adams, _The Restaurant at the End of the Universe_

</comment><comment><USER3> You know how with any product, the big question is what value it brings (or could bring) users? So... what is different about this tea? Will it taste any different or affect me any differently?</comment>


The new Mac Pro: The audacity to say "Yes" in a design culture of "No" - <AUTHOR> https://marco.org/2017/04/15/mac-pro-audacity-of-yes <comment><USER2> """While minimalism is one aspect of one view of good design, it's often overused, underconsidered, and misunderstood, resulting in products with surface-level appeal that don't actually work very well because they were optimized for visual design and minimalism rather than overall real-world usefulness."""

-=-=

this is a crisp characterization of the problem of silicon valley product design today. almost every redesign of major products brings a simpler, more beautiful design which ends up being less useful.

i'm strongly in the boat that the purpose of design is to solve people's problems in ways that are hard to think of but easy to appreciate. in the way that a good symphony is hard to write but easy to recognize.

-=-=

in the 90s the design of mass products like AOL got too complex and it created an opportunity for people to enter the market with simpler designs _which were more usable_. but now we've gone too far. the designs are simpler than ever, but no longer in the service of greater usability. it's time to make tech product design less minimal, less simple, but more useful.

-=-=

the culture of designers is a core part of the cause of over pivot. it's elegant to list out a series of design principles (interface guidelines) and then reject every problem that can't be solved within those principles. it's elegant, but does not necessarily produce better product designs.

<comment><USER3> Design is all about solving user problems, not producing beautiful interfaces. If fact, if you tried to tell a UX designer that their job was to produce beautiful designs that didn't solve user problems they'd quit on the spot.

The Mac Pro is not a simple nor minimal design. It's actually quite a complex design that is optimized for space over flexibility, arguably not good UX. The old Mac Pro, on the other hand, was a great design. It could be criticized as being too expensive, but it was configurable, and very easy to configure to boot. It perfectly met it's target audience.

In summary, I don't think you understand the goals modern UX design and are wrongly assigning blame.

<comment><USER4> In that case a lot of designers don't understand modern UX design either, and it's perfectly reasonable to blame them for that.

Small example - the Google Maps app on iOS used to have a "Show route" button. You could tap it while driving to zoom out and see the entire route.

Now that space has a menu, and you have to tap the menu and then select the zoom view. Two taps.

This is literally a potential disaster while driving because you have to think about what you're doing, look at the screen for longer, and keep your hand coordinated long enough to tap correctly.

This is not solving the user's problem - unless the user's problem is a secret desire to rear end the car in front.

This used to be called style over substance, or form over content - and it's everywhere, from flat/material design that doesn't distinguish between buttons and labels, to mystery meat burger menus, to invisible options that are so well hidden users never discover them, to useful ports and hardware features that disappear and have to be replaced by a pack of ugly dongles.

Minimalism is great _when it solves the user 's problems._ When it creates new problems for the user, it's not so great.

Far too many designers - including some famous names at Apple - don't seem to understand this.

<comment><USER5> "You could tap it while driving..."

This probably violates the Google Maps EULA if not the law in some places.

</comment></comment></comment></comment><comment><USER6> I bet Apple with have the 'courage' to use proprietary connectors inside the case to limit user upgrade options.

<comment><USER7> Bring back NuBus!

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

<comment><USER8> My god, NuBus. Daystar accelerator cards, radius graphics cards... Fun days of upgrading Mac that became outdated 1 year after you bought it.

</comment></comment></comment><comment><USER9> Usually, when the "what we'd like to see in {iOS,macOS}++" articles come out, it's just a couple weeks before Apple announces the new features and I shake my head because it is already way too late for the feedback to reach Apple.

In this case, if you believe the rumors that development on the new Mac Pro is still very early, it actually seems like articles like this and [1] might do some good.

[1] [https://carpeaqua.com/2017/04/09/a-software-developers- mac-p...](https://carpeaqua.com/2017/04/09/a-software-developers-mac-pro/)

</comment><comment><USER10> > Mac gamers need a high-speed/low-core-count CPU, the best single gaming GPU > possible, and VR hardware support.

So honestly, are there any real "Mac Gamers"? At this point I think everyone knows to just boot into Windows to play games... the hardware isn't amazing for gaming, but games run a lot better on Windows than they do on MacOS on Apple hardware. Feels like "Mac Gamers" debate was settled years and years ago... if you're serious about gaming, even like casually-serious, you wouldn't even consider running MacOS.

It's sad... I remember playing Unreal back in the day on a Mac (one of the colorful case Macs) in college. The game ran so much better than it did on a PC... steam looked like steam, lighting looked better... everything was clearly better on a Mac than any PC I had seen / had access to. But when the latest generation of MacPro was new (ha, 2000 years ago at this point)... I fired up a game on it (running MacOS) to see how it compared... and I got better gaming performance on a $400 off-the-shelf-PC with a $250 graphics card added.

What I would LOVE to see is just a Mac like the slightly older MacPro -- aluminum tower case. With lots of standard expansion slots so we could expand as needed (specifically video cards). I don't think games will ever be optimized for Macs the way they are for PCs, but I'd be happy just switching into Windows on the Apple hardware when I played games.

\---

Side note... anyone else play Escape Velocity? I got to thinking about "good Mac games" and that one stands out. Also most of the Marathon series (spiritual precursor to Halo). Hellcats stood out too for being advanced for the time... most everything else came out on PC first though I think.

* EV Nova | Ambrosia Software, Inc. || [http://www.ambrosiasw.com/games/evn/](http://www.ambrosiasw.com/games/evn/)

* Marathon (video game) - Wikipedia || [https://en.wikipedia.org/wiki/Marathon_(video_game)](https://en.wikipedia.org/wiki/Marathon_\(video_game\))

* Hellcats over the Pacific - Wikipedia || [https://en.wikipedia.org/wiki/Hellcats_over_the_Pacific](https://en.wikipedia.org/wiki/Hellcats_over_the_Pacific)

<comment><USER11> It's very sad. Halo was originally announced at MacWorld:

[https://www.youtube.com/watch?v=6eZ2yvWl9nQ](https://www.youtube.com/watch?v=6eZ2yvWl9nQ)

but history did not go that way....

<comment><USER10> I totally forgot about this! Thanks for sharing.

Halo demos at MacWorld 1999...

Microsoft buys Bungie in 2000...

Halo: Combat Evolved comes out exclusively on XBox in 2001... along with the launch of XBox. What would XBox be without Halo?

* Microsoft Buys Bungie, Take Two Buys Oni, PS2 Situation Unchanged - IGN || [http://www.ign.com/articles/2000/06/20/microsoft-buys-bungie...](http://www.ign.com/articles/2000/06/20/microsoft-buys-bungie-take-two-buys-oni-ps2-situation-unchanged)

</comment></comment></comment><comment><USER12> _> Many also use the optical audio inputs and outputs, and would appreciate the return of the line-in jack._

Maybe some people want that, but real audio pros have dedicated hardware audio interfaces that connect over USB/FireWire/Thunderbolt/PCIe.

<comment><USER13> or ethernet(avb, dante)

<comment><USER14> I've never used any pro audio equipment - wouldn't Ethernet be more of a pain than other connectors? You've normally got less Ethernet jacks than any other port on a machine.

<comment><USER15> It may be a pain to only use one connector, but the protocol itself compared to a lot of external busses is a lot nicer. One of the big things ethernet gives is a lot lower latency. The ear is pretty latency-sensitive, with voice latency of 15 milliseconds being a threshold where most people can start noticing. Because of the polling nature of USB, you've got to wait for the bus to ask for data, which means you're going to have at least a couple of milliseconds of latency. Also, because Ethernet is a many-to-many protocol, you can do things like have the synchronization clock on the same connection as data, so you don't need to run a million clock cables along with your data cables.

<comment><USER16> Sure you don't have that backwards? USB 2+ has isochronous transfers with guaranteed bandwidth and latency that come with guaranteed start-of-frame timing strobes every 0.125ms with a jitter spec much better than that. Ethernet... doesn't.

<comment><USER15> It depends on the type of USB audio device. USB MIDI devices, for example, use bulk transfers because they need reliable communications to handle things like sysex sends. Additionally, Ethernet, through the AVB suite [1] does have time reservation, synchronization, and other things that are very useful in dealing with realtime data.

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

</comment></comment></comment></comment></comment></comment><comment><USER17> The only way you're going to make a useful pro machine is to have one with standard parts that can be upgraded easily, something Apple absolutely refuses to do and has refused to do in any of its products for many years. That's why the last decent pro machine is 7 years old and why I'm not holding my breath for the next one. It's guaranteed to be proprietary like _all_ the rest of their hardware these days. Making a pro machine is not that hard. It's by far the simplest type of machine because by definition it should be able to handle _anything_. Hobbyists and corporations alike have been building them for decades. The fact that Apple can't build the simplest type of machine says a lot about them as a company in 2017. None of it good.

EDIT: Discussions around minimalism and design at this point are beyond irrelevant when Apple can't actually build a computer that serves pro users' needs. Those factors only come to play when you actually have the ability to build a proper product. Apple does not have that right now.

</comment><comment><USER18> Not directly related to the Mac Pro, but my 2014 MacBook Pro has annoyed me only having 2 USB ports.

It feels like I need to plug in more than two devices every day. So I end up carrying around a USB hub. Which is just annoying.

What is the benefit of having those sides of the computer be empty?

<comment><USER19> What sort of scenarios require 3 or more USB ports simultaneously on the go? I can understand at a desk, but I'm having a hard time imagining a non-contrived scenario where you would need them regularly on the go.

<comment><USER20> I'm more upset that the two ports aren't on the same side of the laptop. This precludes use of portable hard drives that use two USB connections.

<comment><USER21> I'm actually happy that Apple moved the USB ports away from each other. I used to have a non-Retina MacBook Pro and it was a royal pain to get two "large" USBs to fit at the same time.

</comment></comment></comment></comment><comment><USER22> Let's hope apple wakes up about the MacBook Pro too. The new model is not Pro at all and the touch bar is a nuisance.

</comment><comment><USER23> They just added a mostly superfluous "tab bar" that most of the users have just no use for... how's that for that Apple's _brilliant_ minimalism the author of the article preaches about?</comment>


Ask YC: Logo Crowdsourcing/Competition sites? - <AUTHOR> I was wondering if anyone here knew of any logo competition sites, similar to this one:
http://logosauce.com/
all help is appreciated. Thanks! <comment><USER2> <http://99designs.com/>

<comment><USER3> I've used this, paid $225 for a really nice logo. The more effort you put into your contest (feedback, direction) the better you'll do.

</comment></comment><comment><USER4> 99designs [ <http://99designs.com/> ] is pretty famous too.

edit : sorry just missed the mention of 99designs earlier.

</comment><comment><USER5> pixish.com is another - decent choice if budget is an issue.

</comment><comment><USER6> crowdspring.com

</comment><comment><USER7> designoutpost.com</comment>


Amazon's delivery drone hive (.pdf) - <AUTHOR> http://www.freepatentsonline.com/20170175413.pdf <comment><USER2> Seems like it's going to be a noisy place.</comment>


The following comment may be factually incorrect - <AUTHOR> http://php.net/manual/en/function.uksort.php#116662

<comment><USER2> *is.</comment>


Ron Garret: How knowing Lisp destroyed my programming career. - <AUTHOR> http://coding.derkeiler.com/Archive/Lisp/comp.lang.lisp/2006-04/msg01644.html <comment><USER2> The only thing to take away from this anecdote is that libraries are the key to getting things done these days.

When you are writing a compiler, you are doing most of the work on your own. You don't need much help from external libraries. (Perhaps you need a compiler compiler, but that's about it.) When you are writing a web app (or something similarly "useful"), you aren't going to have much time to do your thing if you are reinventing an HTTP server, a request dispatcher, a component loader, an event handling system, a persistence layer, and so on. The reason the author's C++, Java, and Python colleagues were getting more done than him is that they were all building things on top of each other's work. The author was starting with nothing every time.

0 + 1 person's work is almost always going to be less than (everyone in the company's work) + 1 person's work. If Google used Lisp, he would probably not be "behind".

<comment><USER3> There's more to take away than that, although yours is one big tangible reason why he got left in the dust.

The major point I got from this article is that you can't stop being hungry for knowledge and expect not to get beat by those who are. The language didn't matter; he got bested by the people who kept learning and exploring while he decided he had learned "enough" for one lifetime. He made the mistake of making it about those around him; he didn't want to continually improve, just better than those he would be compared with. He went from learning just enough to best people, to being smug, to being a curmudgeon against other languages/platforms/etc he professed to not know a lot about. I keep seeing evidence around me that this is a very counter-productive shortcut to take, but one that most people don't own up to; props to him for being honest, but sad that it took him too long to come to reason about it. In an odd way, I see this same pattern of behavior in a lot of the one-language-wonder Java programmers I meet today; they know Java, and find what reasons they can to declare that all other languages suck.

So, your point about libraries is a good one, but I'd amend your remarks to advise cultivating an attitude toward development that makes using libraries and ideas of others almost instinctual, and that, I think, is by making sure you always stay hungry for knowledge.

<comment><USER4> I don't know how much you can cultivate that attitude, and how much it's just something you're born with.

<comment><USER3> I think this is a deeper question than the downvoting you're receiving suggests that it is.

There is a certain amount of one's desire to learn that is a matter of personality, and my understanding is that there is some degree of a person's personality that is determined by things other than socialization. Not all of it, but enough to possibly make a difference.

The flip-side of this is that if there are people who, due to some or another in-born trait, are unable to cultivate an attitude of continued hunger for knowledge, that is something they need to deal with by not entering into a profession that demands it. And programming is definitely one of those fields.

EDIT: silencing my own inner grammar nazi

<comment><USER5> > I think this is a deeper question than the downvoting your receiving > suggests that it is.

Yes, I agree. (I upvoted the comment.)

A full response to this will take longer than I have right now (maybe I'll work on a blog entry later tonight). But for now, just for the record, my problem was definitely not that I was unwilling to learn new things. I _love_ learning new things, and always have.

<comment><USER5> <http://news.ycombinator.com/item?id=546080>

<comment><USER4> > That's one of the reasons I hate Java, because learning Java didn't teach me > anything except how truly brain-damaged a language can be.

> I learned more in my one year at Google than in the previous thirty.

This actually makes sense. It's not about being curious, it's about what you're curious about. I remember once asking one of my friends a very basic question about ring theory (whether a certain ring axiom is overly strong.) He completely refused to consider the problem, because it didn't seem relevant. That's not a lack of curiosity, just a lack of curiosity about irrelevant questions, and math is all about knowing which questions to ask. It's not like you learn nothing by solving the problem, just not anything you would have ever wanted to know.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Here is his own summary:

"The conclusion was inescapable: the problem wasn't Perl or C++ or Java, it was me. I just wasn't a very good programmer any more. Lisp's power had made me complacent, and the world had passed me by. Looking back, I actually don't think I was ever a very good programmer. I just happened to have the good fortune to recognize a good thing when I saw it, and used the resulting leverage to build a successful career. But I credit much of my success to the people who designed Common Lisp."

Yeah. I can attest to that. Many non-lisper friends have learned to do very difficult things while _I_ personally remained ignorant of them because I never needed them. This is analogous to how being a fortune 100 CEO is bad for your health compared to being a day laborer; you no longer sweat and work your muscles, you no longer get the necessary daily vitamin D from sun rays, your hands are not as manly and rugged, etc.

Yeah, but then you can afford a chartered JetStream to fly you to the Bahamas for 2 hours of Jungle Gym and back.

Ron Garret just wishes 37Signals to fork SBCL and get us Lispers some hype :-P McCLIM windows with rounded corners FTW!

<comment><USER7> Scheme implemented in Javascript for both server and UI might be a sweet spot.

This -

      "37signals DHH ports Rails to Scheme"

would have been my april 1st HN headline sweetspot !

</comment></comment><comment><USER8> A good question would be who learns more: someone who is an expert at one language and toolset, and continually uses it for investigation of new ideas, or someone who continually changes his language and toolset. Given it takes thousands of hours to become an expert at any combination of language and toolset, I would rather spend my time doing great things than learning new tools. Will you gain exponentially more programming skill by learning haskell or erlang, or should you invest the same time learning another domain (e.g. chemistry, biochemistry, finance etc), and solving new problems in those domains? I would suggest that the latter provides more brain expansion.

Another way to look at it is that programming isn't hard in and of itself. The hard part in any software project is understanding the problem. If all you do is practice programming, and ignore the real world it's likely you will be a great programmer, but make beginner mistakes when trying to solve problems. I have seen brilliant programmers get completely schooled by domain experts with excel macros when it comes to solving some of these problems.

It's the difference between programming for programmings sake or programming to solve problems.

<comment><USER9> I agree with everything you said but I would take it even further. One doesn't even have to go to chemistry or finance to find better things to invest time in than learning new tools. There are plenty of areas within the domain of computer science/software engineering/hacking that are more worthy of effort than learning a new programming language (let alone a new text editor or version control system.) How about learning how to write code that matches regular expressions in guaranteed linear time. Or implementing a compiler. Or looking at the networking protocols used by QuakeWorld and how they are different from the protocols used by the original Quake and why.

I'm not against learning new programming languages. Everyone should learn a few different languages. I just think many people fetishize them out of proportion.

</comment></comment><comment><USER10> His story is almost sad - but in a good way I suppose.

I'm going back through my undergrad CS classes and picking up scheme and lisp again, and I'm really enjoying it this time through. I feel retroactively angry at the linguistic kludges I had to work around in other programming languages before.

That being said, there's always room for diversity. Knowing different languages will either reinforce your opinion of the superiority of your preferred programming paradigm, or it will shed light on a new way that you can hope to incorporate into future development. Either way, you end up the better for it.

"The state of C++ was so horrific back then that they were forced to go back to Lisp because they just couldn't get things to run in C++ even though they tried very very hard." But I'm sure they were much richer for the experience, with several new connections in their brains about how to approach problems with a different set of limitations.

<comment><USER7> "...I feel retroactively angry at the linguistic kludges..."

I can so relate to this - I was looking forward to hacking in Ruby after php / C++ / Java , but this enjoyment is muted as I've now had a taste of Scheme...

Ill bite my lip and do some Rails hacking aboard the Lear jet...

</comment></comment><comment><USER11> I think this is a lesson that you dont' stick to one platform or language. You always branch out. Programming fundamentals are the same, different syntax and culture sometimes but you limit yourself to one language and you are done when it is done... and it will be done at some point.

<comment><AUTHOR> >dont' stick to one platform or language. You always branch out.

The problem is that, to many Lispers, branching out from the Lisp world often feels like branching out on a random path from Rome in its glory days might have felt like - filthy, stinking barbarians abound in all directions. Personally, I feel caged whenever I am not programming in Lisp or a language with similar metaprogramming capabilities (Mathematica, for example.)

<comment><USER12> "The problem is that, to many Lispers, branching out from the Lisp world often feels like branching out on a random path from Rome in its glory days might have felt like - filthy, stinking barbarians abound in all directions."

There are plenty of languages as "elegant" as Lisp, but are significantly different in "feel" and usage - smalltalk, Forth, Prolog, Haskell, Io ...

Lisp has no monopoly on elegance or "metaprogramming", certainly not to the point where the "classical rome vs stinking barbarians" analogy is valid. (This ignores the historical fact that many greeks thought the romans were loutish parvenus, but that is a story fro another day).

<comment><AUTHOR> >Lisp has no monopoly on elegance or "metaprogramming"

Lisp (or rather, the Lisp family - the word has not referred to a specific programming language for decades) does have a monopoly on programming by way of raw syntax tree entry. The latter appears to be required for a proper macro system (though David Moon and others have attempted to change this.)

The fact is, I feel caged when I am programming in a language where I cannot monkey with the syntax at will, and I am not alone in this feeling. When I am barred from creating new syntactic constructs, I feel like a "human compiler" (in fact, exactly that which the job title "programmer" actually meant in practice before the invention of actual compilers.)

I wish to branch out to languages which feel _less_ limiting and _more_ general than the Lisps, not otherwise. And I have yet to encounter any. All of the good ideas of Haskell (laziness, etc.) are easily bolted on top of even a stock Common Lisp. Likewise for the other languages named. Forth, however, remains interesting due to its AK47-like simplicity and embeddability.

<comment><USER13> _I feel like a "human compiler" (in fact, exactly that which the job title "programmer" actually meant in practice before the invention of actual compilers.)_

[citation needed]

<comment><AUTHOR> Read a history of Fortran. It was originally meant for a human to compile into machine code.

</comment></comment></comment></comment></comment></comment><comment><USER14> Okay, so apparently he is now working on something called uwiki (pronounced micro-wiki, because the u is actually a symbol that looks like u)

<http://www.flownet.com/ron/code/uwiki.html>

I am trying to analyze his choice of Python. Python in my opinion, is a practical language, not a fun language.

Perl, Ruby and Groovy are all in my opinion more fun and interesting to work with than Python.

Perl is my opinion, hardcore and the Perl community is again in my opinion by far the most interesting.

Ruby, well, its hip! I guess, and all the girl developer are using it.

Groovy combines Java's practicality and the fun of using a dynamic language with advance feature, like closure! or Groovy's definition of it

Python, well, yea okay they have Django and TwistedMatrix, other than that I believe Python can destroy more careers than Java, C++ and Visual basic combined, the community is so dry and the language is so boring ... which I believe makes it an effective deterrent to any free-spirited individual

Python was one of the first languages I tried, and I have to say that it knocked me out! and I am still recovering! The Python community just killed my enthusiasm to be a programmer.

What I believe killed Ron's career, is that he never cared if Programming was fun! And it seems he still don't! Lisp is smart, intellectual and intrigues you to think, but not very usable and the brackets thingie, its annoying. Python is not thought provoking at all but very usable and practical.

Perl, Ruby and Groovy are both!

</comment><comment><USER15> I enjoyed this post because I feel the same way about Ruby. Many moons ago I used to know C (as in, I didn't have to look every little thing up), Pascal, and even some x86 (for inline use only, mind).

For the last four years I've done nothing by Ruby and.. statically typed languages freak me out now. I know I _could_ do it, but if it's not as super easy as Ruby I'm not all that interested anymore even though there are probably plenty of cool projects I could be using C, C++, Objective C, or whatever for.

</comment><comment><USER16> It is the author's fault for not realizing the real-world skills he'd need. You're not a good programmer unless you know multiple paradigms -- that's like saying you're a mechanic but only being able to change the tires. And true, knowing Lisp gives insight on the flaws of Java ... but knowing Java gives insight on the flaws of Lisp.

</comment><comment><USER17> if current java/python/perl/ruby and their goodies were used instead back then ... could Rover in moon be REPL-debugged miles away from earth? ... given the limitations of very low memory

i'm particularly curious about that one year learning from google

<comment><USER18> Of course. Via [http://www.gigamonkeys.com/book/lather-rinse-repeat-a- tour-o...](http://www.gigamonkeys.com/book/lather-rinse-repeat-a-tour-of-the- repl.html) you can find <http://www.flownet.com/gat/jpl-lisp.html> where they mention "Debugging a program running on a $100M piece of hardware that is 100 million miles away is an interesting experience."

</comment></comment><comment><USER19> funny story :) python ftw

</comment><comment><USER20> Is anyone tired of titles that are "edgy," "controversial," and link bait? It's become a bit passe.</comment>


Ask HN: Is there an IRC server or a Slack community for ML/Recommender Systems? - <AUTHOR> I would like to get in touch with other people in the field. Discuss ideas, see what others are working on, etc. When I was still in university I randomly joined programming related IRC channels and always got something out of it. Now I am at a loss where to find a place to converse.
Where are those communities? Please let me know.<p>Other software related chats are welcome, too! <comment><USER2> try ##machinelearning, #ai, or ##AGI on freenode</comment>


Larry Ellison to Step Aside as Oracle CEO - <AUTHOR> http://online.wsj.com/articles/larry-ellison-to-step-aside-as-oracle-ceo-1411070636?mod=WSJ_hp_LEFTTopStories

<comment><USER2> Discussion is here: [https://news.ycombinator.com/item?id=8337293](https://news.ycombinator.com/item?id=8337293)</comment>


Strangers on the Internet Are Listening to People's Phone Voice Commands - <AUTHOR> http://motherboard.vice.com/read/strangers-on-the-internet-are-listening-to-peoples-phone-voice-commands

<comment><AUTHOR> I thought this was interesting because when the Samsung smart-tv terms of service was being discussed, lots of people said that was making a mountain of a molehill, and that if you just read between the lines they were simply talking about voice recognition quality control. But apparently, in some contextss even voice recognition quality control can be problematic.</comment>


Show HN: Greetings cards that don't skirt around your emotions - <AUTHOR> https://www.punchycards.com <comment><USER2> The messages on them are very honest and refreshing. I just hope your ideas won't be copied by the mainstream card producers and that you will benefit from your creativity.

</comment><comment><USER3> Lovely design and really cute cards! :)

Check the "About" link, it brings me back to the homepage.

</comment><comment><USER4> I love these! Will there be more? Do you ship to the US? Can I buy all of them as a pack?

<comment><AUTHOR> Thanks! Yes, probably around big public holidays and when we think of more! Yes we ship to the US. I'll add a pack now!

<comment><USER4> Awesome! Also, consider providing a way for visitors to provide an email address to stay updated (new cards, etc).

</comment></comment></comment><comment><USER5> This is great! I love the art style

</comment><comment><USER6> This is a great idea. I wish you well!

<comment><AUTHOR> Thank you :)

</comment></comment><comment><USER7> Also check out Mik Wright cards!</comment>


Google Allo's limitations explained in one word: "India" - <AUTHOR> http://arstechnica.com/gadgets/2016/09/google-allos-limitations-explained-in-one-word-india/ <comment><USER2> It seems like Google has completely lost it's sense of direction and purpose. They appear to be throwing stuff at the wall and seeing what sticks. Youtube Go should have just be integrated into the normal youtube app, same with youtube music. They should have improved upon hangouts instead of building Allo and Duo. And now they have killed off chromeOS and are building andromeda which sounds like pretty much another android honeycomb. They desperately need leadership and vision.

<comment><USER3> I agree that google lacks direction and purpose, but I don't believe that this is anything new. Evident it products like Wave and Dodgeball, google has a history of simply trying things out and seeing if it sticks. However, while this is annoying to us as consumers, it does seem to work in that it allows them to occasionally release useful products that, otherwise, would never have seen the light of day.

<comment><USER4> And if they do make a useful product it's killed few years later (;

<comment><USER5> A few million users for an RSS reader? We need a hundred million!

</comment></comment></comment></comment><comment><USER6> I think the article makes (even) more sense, when you read it together with the YouTube Go announcement [1]. The announcement specifically talks about bringing the YouTube experience to users in India.

[1] [http://youtube.googleblog.com/2016/09/youtube-go-youtube- rei...](http://youtube.googleblog.com/2016/09/youtube-go-youtube-reimagined- for-next.html)

</comment><comment><USER7> Replace Allo/Duo/Google with WhatsApp and the article still holds true, but WhatsApp wasn't an India centric product.

Lest we forget that iMessage and facetime only worked with your phone number at launch. Not to mention WhatsApp, which only recently started working in the browser and doesn't work on a tablet.</comment>


A Different Way to Write - <AUTHOR> http://blog.couchwriter.com/articles/a-different-way-to-write/

<comment><USER2> I don't understand what the author thinks of as "traditional writing" since what is described as "piece writing" is pretty much how I learned _traditional writing_ in school (copyediting is a distinct activity from writing, and revising isn't as much reworking an existing piece as writing a new piece with a similar intent to an existing piece drawing on the experience of having written the earlier piece -- and possibly incorporating some of the component pieces included in that existing piece.)

Also: lower case letters exist for a reason. All caps may be okay for headlines sometimes, but its not okay for paragraphs of body text.

<comment><AUTHOR> Hey dragonwriter. I think that I did a poor job of explaining what I meant by 'traditional writing'. I consider the traditional writing process to be a mashup of writing and editing, whereas piece writing allows you to focus on just writing.

Agreed.. But I read somewhere that the occasional all caps in an iTunes description can help people figure out what your app actually does, so I broke convention :p

<comment><USER3> FWIW, I've often heard admonishments to refrain from editing while working on a first draft.

</comment></comment></comment><comment><USER4> Indeed. Traditional writing is hard. I like the idea of Piece Writing. Also I found a little bug on your blog. When you click the title. Instead of redirecting you to the main website it sends you to localhost:8080

<comment><AUTHOR> Ah thanks for that find. Must have overlooked that when I quickly put it up this morning. Ty!</comment></comment>


Great coding how-to's from this week - <AUTHOR> http://madrasa.ca/category/coding

<comment><USER2> Already down.</comment>


Apple Legal Process Guidelines [pdf] - <AUTHOR> http://www.apple.com/legal/privacy/law-enforcement-guidelines-us.pdf <comment><USER2> _" For an in-person data extraction process, Apple requires that the law enforcement agent bring a FireWire hard drive with a storage capacity of at least two times the memory capacity for the iOS device."_

FireWire hard drive? In 2016?

<comment><USER3> That's brilliant. Have fun with that FBI.

</comment></comment><comment><USER4> Really insightful as it details exactly what they record and don't for each product and what they can extract if needed. All in plain English.

The world really needs user friendly end-to-end encrypted email.

Could someone point me to what is the state of the art on solving that problem?

<comment><USER5> I guess you are searching for this:

[https://emailselfdefense.fsf.org/en/](https://emailselfdefense.fsf.org/en/)

<comment><USER4> Well, thanks, that must be the best guide I've seen on how to use GnuPG.

But I'm talking about something that is usable to the lowest common denominator computer user.

I understand that in that scenario you will have to give away some security in the form of trust in some software to gain convenience.

Was just wondering what the most promising solutions to this seem to be?

<comment><USER6> There are no promising solutions to this problem. Email is always going to be hazardous.</comment></comment></comment></comment>


X.509 Style Guide (2000) - <AUTHOR> https://www.cs.auckland.ac.nz/~pgut001/pubs/x509guide.txt <comment><USER2> Style Guides are very time sensitive. As the (2000) indicates this was written almost twenty years ago and as such some of this advice is not very pertinent in 2018 although doubtless joy can still be gleaned from laughing at the quotes.

A good number of X.509 profiles are mentioned, some of which still exist. This being Hacker News you probably only actually care about PKIX (the profile used for the Internet)

And so as a result there's a bunch of advice here you definitely shouldn't follow, instead:

Almost all the advice about serial numbers should be ignored. If you are expected to choose serial numbers, use a large (e.g. 160-bit) random number, the only relevant property is uniqueness and you won't be issuing enough certificates for 160-bit random numbers to be non-unique in a practical sense. If you find that making 160-bit random numbers is too hard, stop here and fix that because you are going to keep needing random numbers, this is cryptography.

Subject Alternative Names must actually be handled as distinct names, all of which are subjects of this certificate. Peter's idea of a "true" alternative name may have made sense in Peter's head for some purpose but it's not what SANs were conceived for and isn't how they're being used. Implementations that handle name constraints need to understand how to constrain SAN dnsNames and/or SAN rfc822 names as appropriate to the application. This is, contrary to Peter, actually easier for Alternative Names because unlike DNs their meaning is not only well defined but actually the real world usage corresponds to this defined meaning well too.

</comment><comment><USER3> I found this document extremely helpful while writing cl-tls. Gutmann also points out a phenomenon he calls "bug conformance", where a major implementation of a spec (Microsoft's, in this case) has a bug, and thus nearly everyone else has to introduce this bug to conform. A curiously common phenomenon in the industry.</comment>


The WebUSB Security Model - <AUTHOR> https://medium.com/dev-channel/the-webusb-security-model-f48ee04de0ab <comment><USER2> > Only sites whitelisted by the device can even request permission to connect > because the device is integrated into the web security model. > Shady sites > cannot even request permission to interact with the device.

It seems like a giant flaw in this model is that once the service goes away for any reason your device is completely useless. You don't have the 'driver' any more and the device won't connect to a RE'd or alternate free 'driver'.

</comment><comment><USER3> Why is this problem not being solved at the OS level?</comment>


Google has suspended Podcast Addict for having podcasts about Covid 19 - <AUTHOR> https://mobile.twitter.com/PodcastAddict/status/1261651512947691520?s=09 <comment><AUTHOR> At least second time this week a high profile app or addons is taken down for seemingly no good reason by google. And only way to get it reinstated is of course to go viral.

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

<comment><USER2> This wasn't taken down and the issue was resolved.

<comment><USER3> horse shit. still not available: [https://twitter.com/PodcastAddict/status/1262047866614247425](https://twitter.com/PodcastAddict/status/1262047866614247425)

<comment><USER2> I'm referring to this one [https://blog.pushbullet.com/2020/05/15/our- extension-is-safe...](https://blog.pushbullet.com/2020/05/15/our-extension-is- safe/)

<comment><USER3> In that case I apologize. I wrongly figured you were referring to Podcast Addict, which is still not available on the Play Store :-\

</comment></comment></comment></comment></comment><comment><USER4> Its always nice when the best and brightest come to a consensus.

Science has been broken for some time now, so YOYO to ascertain the best course of action for anything important regarding your health at the present time.

Maybe this is their way of saying I/We don`t know.</comment>


A Nigerian Startup on Path to Solving the Digital Music Distribution Problem - tefo-mohapi http://www.iafrikan.com/2016/05/05/this-nigerian-startup-is-on-the-winning-path-to-solving-the-problem-of-digital-music-distribution-in-africa-2/ <comment><AUTHOR> _> While other players go down the streaming path, MyMusic offers users the ability to download music for ₦30 ($0.50) per track. _

I can't tell from the article if the story has relevance to the USA market. If record companies today can get $0.70 cut from Apple for a $0.99 song on iTunes, it doesn't look like they'd take less than $0.50 from a startup.

Last I checked, Amazon Music downloads is also 70/30 split for 99 cent songs.

 _> The team invested a lot of time [...], while mending those with record labels and artist management companies._

My notes to any programmer that's interested in selling music for 50 cents or less:

Before investing a ton of time writing any code, get on the phone with the Big 3 record labels Universal+Warner+Sony. See if you can get favorable licensing terms so that they'll take $0.35 and let you keep $0.15. I'm skeptical you'll get such terms because Spotify/Pandora tried to get better terms so they could turn a profit. They couldn't make it happen. Maybe you have better negotiation skills and charm than the Spotify executives. Napster's Shawn Fanning & Sean Parker didn't have the business chops to wheel & deal with record labels but Apple's Steve Jobs did.

<comment><USER2> You have to remember as well that cheapness matters, especially when piracy is actually the norm to the point that genuine copies are considered a frivolous luxury... which is true for the vast majority of people on this planet.

I'd easily take 10M units at 10c profit a piece over 50k units at 70c profit.

Imagine your lunch costs 5c instead of $5... not everywhere has the same economic values.

<comment><USER3> You can reduce your margin, but you can't really reduce the wholesale price. If the big labels expect to take $0.70 from you and your target audience is not willing to pay a dollar but rather something like $0.50, then you can only make negative profit.

</comment></comment></comment><comment><USER4> The best way to do this is to legally stream people's personal libraries. The software would be a legal version of Napster. How, you may ask?

File locking.

Imagine a system that allows you to see a list of music available from your peers. If you stream a song from your peer, a file lock engages on their copy. That peer is unable to play the song. If they need to get to song, they could end the stream.

Such a system exactly mirrors sharing physical media. You are bereft of the item. You don't get the item back until the person to whom you lent the item returns it. Return occurs hen the file lock is relinquished. As such it should be perfectly legal to share.

The difficulty with such a system is that there is little place for profit. The software does provide a serivce: indexing and suggestions and playlists. You could do ads. People might not join because of it. You could charge a low flat fee. Just hard to monetize it.

<comment><USER5> This file lock cannot exist outside of some intensely locked down binary blob which will be cracked in minutes. Your idea might make sense legally, but it doesn't make sense physically.

<comment><USER4> Actually Java NIO locks the file at the OS level, if the OS provides that feature. Windows does. I played with the idea a bit at IUPUI during a distributed systems class. You're correct that having to do the locking in userspace would be difficult.

Some one could crack it. That doesn't mean much legally. Look at DRM: it's crackable. The industry still uses it.

</comment></comment></comment><comment><USER6> Kids under 12 have grown up in an era without physical formats, and with YouTube and Spotify etc as the main means of listening to music.

They could not care less for owing their music collection as digital files.

Of course some outliers will want it -- heck, some people even fell for Ogg Vorbis and FLAC, but those are never going to tip the scales.

(And for the majority, unlike in the 50s-to-80s era, music is that not big deal in their life anyway. They have tons of other diversions, mobile, chat, social, 24/7 internet, youtube, videogames, etc).

</comment><comment><USER7> I was thinking last week how places like Nigeria will be the location of the next start up bubble as they pass through the threshold of punctuated equilibrium. They have unique problems that a bunch of tech geeks in the Bay Area and hipsters in Portland would never think of needing to be solved.

<comment><USER8> >They have unique problems that a bunch of tech geeks in the Bay Area and hipsters in Portland would never think of needing to be solved

You're right about that. The tech scene in that country would remain paltry until two things are solved.

First, the internet. The telecos have only built dumb pipes to Europe. There is no peering agreement amongst local telecos. It's better to host a website in the US than locally because the roundtrip time would double rather than decrease.

Thus, that initial low cost barrier to building something that allowed the internet to blossom like a flower is absent. Remember how Google and Facebook leeched off their university computers and network for years? It can't happen because of this factor. And because usable Wifi simply doesn't exist. It's either passworded for University staff use or insanely slow. (I've visited at least 3 Nigerian universities and Two in Ghana.) I've spoken to several students and the situation is the same.

The second issue to be tackled would be payment. The major players are tied to the banks. Thus, they can't reorient their thoughts to what's required to make online payments smooth, easy and cheap for users.

<comment><USER9> Thanks for your comments. I have visited so many universities in Nigeria and I think that the drive is not there at all. However, I heard that private universities are far better equipped and oriented(I have not visited such schools). I just noticed one thing among Nigerians, my people, they would prefer to blame the system instead of working to overcome obstacles. I operate an online shop and my target market is universities.I only accept bank transfer(awkward you my say) and PayPal. I hope to network with you in the future.

<comment><USER8> My email is visible on my profile. If it isn't. It's my profile name @live.com

</comment></comment></comment></comment><comment><USER10> The only problem to the distribution of music /IS/ the legacy distribution industry. They refused to adapt and therefore the best thing for everyone else is that they die off.

</comment><comment><USER11> The music industry is so large, nobody will be able to defeat them or their pack of lawyers in court. Napster was supposed to be a revolution, but all it did was put all of the indy artists out of business and create the environment we have now where music is virtually worthless and the only way to make a living as an artist is to sign with a big company and tour.

Music sharing took away all of the power we had to defeat the music industry. You need big money to make big changes, and now it's way too late.

The only real way to change the music industry is to start your own label, get the rights to all of the musicians' work, and then charge what you feel is right for the music and give them their fair share.

Nobody wants to do this because it will take years of sacrifice and money. I suspect that most people that start out with this intention, end up becoming the exact company they aimed to stop in the first place, because they didn't realize the cost and risks involved with the music industry.

<comment><USER6> > _The music industry is so large, nobody will be able to defeat them or their > pack of lawyers in court. Napster was supposed to be a revolution, but all > it did was put all of the indy artists out of business and create the > environment we have now where music is virtually worthless and the only way > to make a living as an artist is to sign with a big company and tour._

It also halved or even less the revenues of the music industry.

It was indeed a revolution, but not necessarily good for the indies. Plus, technology lowered both recording and distribution costs to nearly 0, and so everybody and his dog is an indie now and people just don't care. If you have 10.000 indie artist, each might have a following. If there are 200.000 of them, it's much more difficult.

> _Music sharing took away all of the power we had to defeat the music > industry. You need big money to make big changes, and now it 's way too > late._

Only if the idea of "defeating the music industry" was "and get to make a living as indie artists".

If it was "fuck the industry part, let's just have music from people who don't do it for profit" then it was a wild success. We now have more music from people who couldn't give a rats arse for profits than ever before -- all over Bandcamp, CD Baby, personal sites, small vanity pressings and more.</comment></comment>