Show HN: Referlist – Increase email sign-ups via word of mouth referrals - <AUTHOR> Hi there HN!
Excited to share Referlist (https://referlist.co/), a simple way to increase sign-ups on your landing page for pre-product launches. Give your users early access to your product when they share it with their friends!
I make A LOT of landing pages. Whenever I want to test an idea, I'll make a website with a sign-up form to see how excited people are about a concept. I wanted to encourage word of mouth growth and incentivize my users to share these sites with their friends. Robinhood was able to amass nearly one million sign-ups via their referral program, so I tried googling for an easy way to add something similar to my page. Everything I found was expensive, too complicated and came pre-packaged with a landing page which I didn't want. I ended up building a custom solution for myself and it worked great!
I noticed other friends launching projects doing the same, so we built Referlist to save everyone some time. No coding required. It's plug-and-play like Drift. Takes 5 minutes to setup. It's free to get started. You only pay if you get more than 100 sign-ups so you can feel free to launch as many failed experiments as your heart desires at no cost! You can export your users to CSV or Mailchimp. Also add a custom message, custom colors and seed your waitlist so that it doesn't look completely empty for the first few sign-ups.
Any feedback is welcome! Also feel free to email me directly at email@example.com
Cheers, Parthi and the Referlist team <comment><USER2> Looks like you are using Hakara mail server ( _edit:nope_ ) and Firebase.

[http://haraka.github.io/](http://haraka.github.io/)

Site is clean, documentation is simple and everything seemed to work great. Thanks for sharing. The only issue I see: I can sign up using my own referral code seemingly unlimited times with fake emails, and I don't even need to do this on a real domain... the JS code works from a local HTML file [0]. So people that want to bump their place in line, or competitors wanting to cost me money/headache, can seemingly sign up dozens of fake referrals per second. I assume nefarious use was not on the high priority list before launch, but do you have any plans to mitigate this type of activity in the future? Perhaps rate limiting and IP / browser session checks on the server side to start?

[0] [https://docs.referlist.co/#/?id=install-embedded-sign-up- for...](https://docs.referlist.co/#/?id=install-embedded-sign-up-form-in-a- website-builder-like-squarespace-webflow-wix-etc-you-write-0-lines-of-code)

<comment><AUTHOR> We don't use Haraka but we do use Firebase!

Thanks for the feedback!

You only move up the waitlist if a person you refer verifies their email. Robinhood Crypto had this issue where they didn't check email verification and people gamed it. Made sure to handle that nefarious use case. But thanks for asking! I guess you could own a ton of fake emails and still be adversarial. In which case, I should probably implement an IP rate limit like you suggested.

<comment><USER2> Glad you already thought of the email verification idea. Great!

<comment><USER3> Next step would be blocking temporary emails domains, which is a rabbit hole, and also adding captcha to the verify I guess.

Also allowing only hotmail/gmail/etc might help

</comment></comment></comment></comment><comment><USER4> Looks interesting! Few bits of feedback:

\- The signup widget doesn't submit when hitting enter after entering my email in the text-box, which is a reasonable expectation from an accessibility POV

\- On the 'complete' page I see that the email I entered is part of the page query string, which makes me really uncomfortable. It's commonly accepted practice (in places like adtech[0]) to not pass PII in the URL as it can easily be leaked

\- As a potential customer, when I view your Privacy Policy and Terms of Service it reads pretty ambiguously if the customers that signup for my service and this services stores will only ever be used by me or if Referlist retains some rights to use my list as you see fit. Worth clarifying

\- Pricing seems reasonable, but I'm pretty sure you could charge me more. Also, I'd love a CTA I could click on directly within/under the price columns (I had to go hunting for a bit to find out how to pay you)

0: [https://support.google.com/adsense/answer/6156630?hl=en](https://support.google.com/adsense/answer/6156630?hl=en)

<comment><AUTHOR> Thanks for the helpful feedback!

\- That's a bug more than a feature because I unfortunately haven't tested the site for accessibility (but I should!) \- Re: the email being in the query params, that's a good point. Will see if I can change that to a POST request. \- We don't want to use emails you collect. Will clarify! \- I probably could. Businesses like Viral Loops do. I wanted to make something accessible to builders. Might consider restructuring tiers as and when I add more features.

</comment></comment><comment><USER5> Interesting!

You probably know this is a crazy crowded space - there are tools out there like ViralLoops and ReferralHero, to name just two of the more popular ones that have been around for years. What's your value proposition over one of those tools?

BTW I've been working in this space for ~2 months now, with a small referral tool built _only_ for newsletter creators. It's super private early access (not even a website) - but we're seeing our early users growing their lists by >10% MoM in some cases!

That is with more established newsletters though - many hundreds (ideally thousands or tens of thousands) of subscribers.

We didn't see 'new' newsletters without an initial audience get too much value out of a referral program so far - so I'm excited to follow along and see what you do differently to help those early stage founders :)

<comment><AUTHOR> It is crazy crowded. Everyone else is expensive and a little "too much". This is an affordable side project I made for myself that I wanted to share with the world since I wasn't happy with what was out there. Not trying to gouge people on pricing. Hope you find it helpful!

To your point about who finds these kinds of tools helpful: Yeah, I think viral mechanisms only work once you've nailed core value prop. But they compound very quickly if you do get past that hurdle and can change the slope of your growth trajectory.

</comment></comment><comment><USER6> This looks really cool, nice work launching. I'm ready to use it on a project that I'm building.

However... When I signed up on your site, I received the confirmation email to my Gmail inbox but when I clicked on the link it said:

> Suspicious link > This link leads to an untrusted site. Are you sure you > want to proceed to referlist.co?

I'm not sure why Google would think your site is suspicious but I'll refrain from using the service until that kink is worked out, as I wouldn't want my prospective users seeing that.

<comment><AUTHOR> Can you email the message at email@example.com?

Super weird since those are being sent with Firebase that is owned by Google.

</comment></comment><comment><USER7> Hey Parthi, do any of your pricing plans allow us to host the success page on our own domain?

<comment><AUTHOR> Not yet. But something I want to add. Setup will be a little bit more complicated since you will have to change DNS records.

</comment></comment><comment><USER8> To me the real utility of this, is testing "concepts". The way I would see myself using this is to create a few keyword campaigns, and then send them to these pages to see how much actual interest there is for the idea.

Perhaps this might be a "premium" feature, but what would go along with this is a root "project", with multiple landing pages. Then I'd like some analytics to compare. Basic conversion funnel stuff. If it integreated with google keywords directly, that would be awesome.

I'd also like the customize the page a bit more too, it's very generic looking today.

<comment><AUTHOR> Yup, that's a good idea. I think that's pretty effective for e-commerce and consumer especially where paid advertising can be used to test CTR, CAC and general interest.

I think the next step there would be to build a landing page generator. There are a ton of them like Unbounce and Instapage. Maybe I should partner with them since building one of those out is quite the task.

You can customize message, colors and add your logo today. What else would you like to customize? Will definitely consider adding it!

</comment></comment><comment><USER9> I get a white page, both on: \- Firefox + uBlock \- Firefox without uBlock \- Chrome in incognito (no extension enabled)

I wasn't able to get a not white page in any browser. For a split second appears the text "Loading...". On the inspector, it says you are using a dev build of Firebase SDK

Edit:

solved, I was accessing "/index.html"

<comment><AUTHOR> How did you get there? Did something link you.

Also didn't realize there was a dev build of Firebase SDK. Looking through docs right now. It seems to be one and the same. Will update you if I made a mistake and needed to flip a dev to prod flag somewhere.

<comment><USER9> HN doesn't highlight links, Firefox doesn't have the popup menu option "navigate to {selected text that is an url}", and I didn't want copy-paste, so I selected it, and used "Search on google for {selected text}". The 3rd result on google for "[https://referlist.co/"](https://referlist.co/") links to "[https://referlist.co/index.html"](https://referlist.co/index.html")

</comment></comment></comment><comment><USER10> Very exciting product. Congrats. Just joined the waitlist and had a waitlistception.

<comment><AUTHOR> This whole project is very meta :-)

</comment></comment><comment><USER11> Nice project! I tried the demo, but it didn't work for me:

* I joined the waitlist with email@example.com, then I was redirected to [https://referlist.co/joinwaitlist/referlist?email=a@example....](https://firstname.lastname@example.com). 84 000 people ahead of you

* I copy/pasted the link [https://referlist.co?ref=TOKEN](https://referlist.co?ref=TOKEN) and sent it to another email address

* From another browser, I clicked on the link, and joined the waitlist for firstname.lastname@example.com and I was redirected to [https://referlist.co/joinwaitlist/referlist?email=b@example....](https://email@example.com&ref=TOKEN): "84 001 people ahead of you", ok this is normal

* BUT: when refreshing the page for user A: [https://referlist.co/joinwaitlist/referlist?email=a@example....](https://firstname.lastname@example.com), I'm still 84 000. Shouldn't it be 83 999?

PS: I didn't receive any email at all, not in the spam folder too. I have a gmail address.

TL;DR: I shared link to a friend who joined too, but I didn't move up in the waitlist position. (For Referlist demo).

<comment><AUTHOR> User B needs to verify their email for it to count. Otherwise you could enter a fake email and move up the list. When user B joins the list and verifies their email, A's internal score increases. The final list is sorted by score and then sign up date. So what you described is working as intended.

However, what you might be getting at is that you want a different sorting mechanism, which is a feature request. What would you expect to happen? Maybe I can consider that

<comment><USER11> How should B verify their email? I guess by clicking on a link they receive via email? In my test, B received no mail. I double checked in spam folder; I've tried with A and B two gmail addresses.

Something else: Let's say I am 84 000th on the list, and a friend joins in, so I am 83 999th. Then during 3 days I don't do anything. Question: Will I stay 83 999th or are new people arriving in the meantime and sharing a lot going to pass me, and I will finally be moved back to 90 000th?

</comment></comment></comment><comment><USER12> What YC batch are you in?

<comment><AUTHOR> This is not a YC company. Apologies if there is any confusion. Title has been changed to Show HN.</comment></comment>


Ask HN: Try my new reverse crossword puzzle database - <AUTHOR>

My dad has gotten me into crossword puzzles lately and after seeing similar clues and answers across puzzles I got interested in the symmetry.
Long story short I put a ton of puzzles in a database and made a simple interface to browse them. See an answer and easily view all the clues that have pointed to it (and vice versa).
If there are any other crossword puzzle fans out there you may enjoy looking at things from this side. I have to say it has helped improve my speed.
http://crosswordtracker.com/ <comment><USER2> Nice!</comment>


People Have Found a LEGITIMATE Way to Hide Porn on YouTube - <AUTHOR> http://www.wetheunicorns.com/news/porn-youtube-find-free-google/#7vV9b2qvXJD57REZ.97 <comment><USER2> "Legitimate" is not the right word for this. "Feasible" is more correct.

Set the video as hidden and it bypasses content checks, but you can still share a direct link to the video, thereby taking advantage of YT's infrastructure to spread porn.</comment>


Ask HN: What life or death systems rely on Windows? - <AUTHOR>

We recently had a debate about the use of Windows for truly life and death applications. There are stories of Worms infecting Windows computers running nuclear power plants, but it's hard to tell whether these are employee/generic systems, or truly mission critical appliances.<p>Does anyone have any anecdotes about the use of Windows to run truly life or death systems - like air traffic control, medical tools, military systems, elevator and traffic control, and so on? <comment><USER2> There are SCADA systems which use Windows to run some logic/graphical front- ends to the system. Unfortunately, some of these systems are misconfigured in that individual PLC's cannot adapt to changing conditions without first getting confirmation from the services running on the Windows boxes. If Windows crashes, whatever state the system was in at the time persists! It's a shame configuration issues arise in systems like these...</comment>


Microsoft Announces Partnership with Chevron to Accelerate Oil Extraction - <AUTHOR> https://gizmodo.com/just-days-ahead-of-employee-climate-strike-microsoft-a-1838229409 <comment><USER2> Microsoft posted this blog post titled "Ambition is good; action is better: Making progress on our climate commitments" two days ago:

[https://blogs.microsoft.com/on-the- issues/2019/09/22/ambitio...](https://blogs.microsoft.com/on-the- issues/2019/09/22/ambition-is-good-action-is-better-making-progress-on-our- climate-commitments)

The value of their actions seems pretty clear cut.

</comment><comment><USER3> An open question for me is how much employee pressure actually influences the decision making process at megacorps like this. Is Microsoft genuinely concerned about its employees leaving/striking over this? Are they worried about negative PR from the noise the employees are making? Are they not worried at all?

I imagine Bill Gates isn't super happy about this perception of his creation. Would he speak out against this? Would that scare away the people making these contracts?

<comment><USER4> Only at Google is employee voice truly heard compared to the rest of FAANG and Microsoft.

<comment><USER5> Unless you're an outnumbered conservative.

<comment><USER4> Keep peddling the HN narrative.</comment></comment></comment></comment>


'Healthiest hearts in the world' found - <AUTHOR> http://www.bbc.co.uk/news/health-39292389 <comment><USER2> It seems questionable to me that genes aren't even mentioned in passing when summarizing possible reasons for a specific physiological difference observed in a small, insular population. Especially considering that there are well- documented cases of both genes that accelerate atherosclerosis and specific families with extremely low rates of heart disease that don't seem to be explained by lifestyle factors. If it were all about macros and staying active, why _this_ population and not dozens scattered throughout the world?

<comment><USER3> I agree. The most interesting thing to check would be to try finding some Tsimane that left to work in the city and check their heart values.

<comment><USER2> That would be interesting, but part of the complexity of this is that "healthy lifestyle" may be as much about fitting together with genetic factors as approaching some universal ideal. I think it would be really interesting (albeit unrealistic) if there were a baby exchange among various populations with high longevity in general or low CVD in particular, and see if there's any significant pattern. Would people with Tsimane ancestry thrive in Okinawa? Would people with Ryukyuan ancestry get a heart attack at 40 living on Sardinia?

</comment></comment></comment><comment><USER4> Seems like the biggest takeaway is their high levels of activity, like walking and biking. Developed countries are unlikely to get rid of 'screen time' anytime soon, but we could surely orient our cities around walking and biking more (particularly in the US).

<comment><USER5> As a developer, I sometimes ask myself how I can get more exercise. My commute is 1.5 hrs each way. So 8+3= 11 hours of sitting related to work.

By the time I get home I am almost super tired and hungry to anything else.

Averaging 16,000 steps is very impressive. Feels like a distant dream.

<comment><USER6> As a kinda lazy developer myself here are the things that motivate me to workout:

1\. Being more attractive. This is probably the no.1 reason, as facetious as it may sound...helps that I am single. I have certainly noticed people of the gender I like begin to notice me more, and that is an implicit but powerful motivation to stay in shape. Don't worry about looking like models from Men's Health: you just have to look/feel like you take care of your body.

2\. Having workout possibilities close at hand. I live in a residential neighborhood and my gym is far away, so I got into outdoors running. So after work, I put in my bluetooth headphones, play some tunes and just run. I'm too lazy to go to my gym regularly, but since I can just step out of my house and start running, it reduces the barrier to doing that. I'm planning on moving to an apartment complex that has an in house gym because of the very same reason.

3\. Eating healthy and mindfully. Your diet can have an out sized impact on your ability to work out. Personally, I found that I need to wait for a couple of hours after my last meal before I start an active workout; otherwise, my tummy is full and busy digesting food. Also, perhaps the food digests by that time because I feel a surge of energy...which brings to my last point:

4\. Point 2 is useful because there will be peaks and troughs in your day, energy wise. You might get up at midnight and feel full of energy, or may have a planned workout at 7pm and feel completely exhausted. Having the ability to run/workout closeby helps here, because you can then use your body's natural inclinations in your favor.

Anyways, full disclosure: completely personal experience, I am not a certified anything. Hope you find something that works! It may be a personal thing, but I find my productivity and creativity peaks when I live a healthy lifestyle.

</comment></comment></comment><comment><USER7> It's interesting that the article points to a high carbohydrate diet as being one of the takeaways. I suspect some people will glom onto this data point (see, sugar isn't bad!) despite their largely unprocessed diet and constant physical activity into old age.

<comment><USER8> What kind of carbs though? Beans actually have a lot of carbs even after subtracting fiber but I don't think anyone thinks they're unhealthy.

<comment><USER9> Exactly, I didn't see it in the article but I think it's a good guess their carb intake has somewhere near zero processed/simple sugars and processed carbs. They are eating "whole foods."

One thing I'm interested in is other than animal sources, what what fat sources do they have in their diet. Nuts is one thing that was mentioned. I wonder if they extract any oils for cooking from vegetable sources.

<comment><USER10> Do they need more fat in their diet? They aren't buying 15% fat ground beef and nicely trimmed steaks and they probably aren't discarding the skin of the fish they catch.

</comment></comment></comment></comment><comment><USER11> A small sample population is likely to produce the highest rate of occurrence of a randomly distributed feature. A small sample population is also likely to produce the lowest rate of occurrence.

</comment><comment><AUTHOR> _" They also live in small communities, life is very social and they maintain a positive outlook."_

Quote from one of the researchers.

</comment><comment><USER12> The article did not point out to other details of their research like: 1\. Do the Tsimane people consume or have access to processed foods? 2\. Vaccinations? 3\. Any access to pharmaceutical products?

It also mentioned on the article:

"The scientists scanned 705 people's hearts in a CT scanner after teaming up with a research group scanning mummified bodies."

If they performed the test on mummified bodies, how were they able to determine the amount of CAC at the age of 45 and again at the age of 75?

I wonder if they also performed some tests for those people who are still alive?

<comment><USER13> They scanned live people, they just teamed up with a group that was scanning mummies.

I'm trying to deduce a physiological way a vaccine could induce coronary artery problems and I can't see any way.

</comment></comment><comment><USER14> What is their longevity though? I could not find it anywhere in the BBC article.

Healthy heart is nice and does bring quality of life, but what is their life expectancy?

<comment><USER15> "Average life expectancy at birth was 43 years between 1950-89 and increased to about 50 during the period 1990-2002. Half the population is under 15 years of age."

[http://www.philosophy.dept.shef.ac.uk/culture&mind/people/gu...](http://www.philosophy.dept.shef.ac.uk/culture&mind/people/gurvenm/) (that is the site of one of the anthropologists quoted in the BBC article)

They also have very high parasite load, which was kind of mentioned in the article; may influence fertility as well as heart health and overall longevity: [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3529658/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3529658/)

<comment><USER16> It's difficult to get a good sense of 'longevity' with life expectancy stats, especially when in this case they only take an average. I can imagine that this group of people does not have modern tools and techniques for child delivery. Obviously that is concerning and worth keeping in the picture, but any higher than usual child mortality rates will really skew the life expectancy stat, making it appear as though people just drop dead in their 40s and 50s.

Edit: I probably don't need to point that out to the typical HN reader, but its something I personally wouldn't have picked up on a few years ago

<comment><USER15> The second link I posted has survival curves. Child mortality is high but not the whole story - lots of people dying at all ages due to infectious diseases.

<comment><AUTHOR> Yes, the intestine parasites don't exactly enthuse one to adopt the lifestyle. A simple clinic with antibiotics could sort a lot of the mortality though.

</comment></comment></comment></comment></comment><comment><USER17> Very strange that the deleterious effects of artificial light extending the day aren't even mentioned. The evidence keeps mounting, we now know that pRGCs exist, but the old assumptions persist. One isolated tribe in New Zealand I believe it was had wonderful health - until a hydro damn was sited there, and they were given free electricity. Diet matters, but light affects appetite, so what you eat will change as your light exposure changes.

</comment><comment><USER18> > One idea is that intestinal worms - which dampen immune reactions - could be > more common and this may help protect the heart.

In case you are interested in this point, then have a look at helminthic therapy ([https://en.wikipedia.org/wiki/Helminthic_therapy](https://en.wikipedia.org/wiki/Helminthic_therapy)).

</comment><comment><USER19> So what is _their_ number one health risk? And life expectancy after reaching adulthood?

<comment><USER20> loneliness and pessimism .

<comment><USER21> Ahh, all a matter of adaptation..

</comment></comment></comment><comment><USER22> High Blood Pressure Medications [http://www.everydayhealth.com/high-blood- pressure/guide/medi...](http://www.everydayhealth.com/high-blood- pressure/guide/medications/)</comment>


Ask HN: Would you learn from the errs of other founders?, founderrs.com - <AUTHOR> Don't we learn from our mistakes? Wouldn't we also learn from the mistakes of others? Startups make "trials & errors" on a daily basis. Most startups fail. And failure is not something entrepreneurs are scared of. We know that is an intrinsic part of innovation. However, all the experience, lessons & wisdom that founders gather through their errors is getting lost forever. Is not being recorded, shared or analyzed in any systematic way. No wonder why we, founders, tend to repeat the same mistakes.
The press is doing a good job sharing all the success stories, but isn't it true that there is a lot to be learned from failure also? Founderrs.com is meant to be a repertoire of mistakes, written for founders by founders. Where we all can learn from each other's fuck-ups.
Would any of you have some errs others could learn from? <comment><USER2> There is a similar project [1] that has a collection of about 150 post mortems.

[1] [http://autopsy.io/](http://autopsy.io/)</comment>


Yahoo's $8bn Black Hole - <AUTHOR> http://www.bloomberg.com/features/2016-yahoo/ <comment><USER2> is it just me, or is the formatting of the top of the article a complete mess?

<comment><USER3> [http://i.imgur.com/kEML9P9.jpg](http://i.imgur.com/kEML9P9.jpg)

Looks like a mess on my Retina Macbook.</comment></comment>


How accurate are the HTC vive trackers? - <AUTHOR> https://twitter.com/gameism/status/846810493994123267 <comment><AUTHOR> Someone here was asking about juggling in VR the other day, and then by coincidence I came across this. :-)</comment>


MuseNet - <AUTHOR> https://openai.com/blog/musenet/ <comment><USER2> My take on the classical parts of it, as a classical pianist.

Overall: stylistic coherency on the scale of ~15 seconds. Better than anything I've heard so far. Seems to have an attachment to pedal notes.

Mozart: I would say Mozart's distinguishing characteristic as a composer is that every measure "sounds right". Even without knowing the piece, you can usually tell when a performer has made a mistake and deviated from the score. The mozart samples sound... wrong. There are parallel 5ths everywhere.

Bach: (I heard a bach sample in the live concert) - It had roughly the right consistency in the melody, but zero counterpoint, which is Bach's defining feature. Conditioning maybe not strong enough?

Rachmaninoff: Known for lush musical textures and hauntingly beautiful melodies. The samples got the texture approximately right, although I would describe them more as murky more than lush. No melody to be heard.

<comment><USER3> Funny, as someone with the useless superpower of knowing an enormous number of TV Show themes, I could hear all sorts of riffs on such themes ranging from Magnum PI to Sesame Street.

Overall, IMO it wildly gyrates from the best I have ever heard all the way to the return of Microsoft's thematically lifeless Songsmith without warning...

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

</comment></comment><comment><USER4> I think this is far, far beyond any algorithmic composition system ever made before. It displays an impressive understanding of the fundamentals of music theory.

Most previous attempts at neural net composition restricted the training set to one style of music or even one composer, which is pretty silly if you understand how neural nets work. It was obvious to me if you used a very large network, chose the right input representation, and most importantly used a complete dataset of all available music, you would get great results. That's exactly what OpenAI has done here.

It is still lacking some longer term structure in the music it generates (e.g. ABA form). But I think simply scaling up further (model and dataset size both) could fix that without any breakthroughs. This seems to be OpenAI's bread and butter now: taking existing techniques and scaling them up with a few tweaks. (To be clear, I don't mean to minimize what they've done at all. "Simply" scaling up is not so simple in reality.)

What might still need some breakthroughs is applying the same technique to raw audio instead of MIDI. Perhaps what is needed is a more expressive symbolic representation than MIDI. I'm imagining an architecture with three parts: a transcription network to produce a symbolic representation (perhaps embedding vectors instead of MIDI), something like this MuseNet for the middle, and a synthesis network to translate back to raw audio. This would be analogous to gluing together a speech recognizer, text processing network, and a speech synthesizer. Such a system could generate much more natural sounding music, even perhaps with lyrics.

<comment><USER5> How do you compare them to Aiva [1]?

[1] [https://aiva.ai/creations](https://aiva.ai/creations)

<comment><USER6> Aiva is _way_ better than this honestly, and I mean the pure AI part of it, that (AIUI) only really generates monotimbral, piano-like music (the orchestration in the full pieces they release was - by their own admission - done by humans, last I looked into it). You can actually _tell_ that Aiva involves real _serendipitous_ ("out-of-sample") creativity of the sort that AIs (and good human composers!) are best at. (But the openly-available models I mentioned elsewhere in the thread are still a bit better, TBH. At least IMHO, and when it comes to rewarding active listening.)

</comment></comment></comment><comment><USER7> I don't know the other genres well enough to evaluate them, but the bluegrass one ([https://soundcloud.com/openai_audio/genre- bluegrass](https://soundcloud.com/openai_audio/genre-bluegrass)) is pretty bizarre:

* Who uses piano as the lead instrument in bluegrass?

* They're only using one one note velocity for the whole piece, which misses a huge wealth of variation through rhythmic accent.

* Timing generally feels a bit robotic?

* The best parts it sounds kind of ok but boring; in bad parts it sounds like nothing ([https://soundcloud.com/openai_audio/gaga-beatles](https://soundcloud.com/openai_audio/gaga-beatles) is even worse that way)

* A lot of the artificiality seems to be the synth they're using.

* On the other hand it does understand a bit about phrasing and repetition, which many people new to traditional music take a long time to pick up.

<comment><USER8> It's midi. It's meant to be notation, not a realistic composition. I suppose the background "machine gun" piano notes would be a bassy synth combined with 90s electronic music drums. So please do not focus that much on the audio or performance part of it, but on the composition part of it.

I do agree they could have trained it about the importance of velocity though. (That neural net, and most young music students out there too, heh)

<comment><USER7> _> It's midi. It's meant to be notation, not a realistic composition._

MIDI certainly can represent realistic compositions, when used with good synths, though I agree it's not what it's known for!

 _> I suppose the background "machine gun" piano notes would be a bassy synth combined with 90s electronic music drums._

Uh, what sort of bluegrass music do you listen to and where can I find some of it?

<comment><USER9> I think they meant the gaga-beatles one, there's a lot of "machine gun" piano sounds.

[https://soundcloud.com/openai_audio/gaga- beatles](https://soundcloud.com/openai_audio/gaga-beatles)

</comment></comment></comment></comment><comment><USER10> This seems incredibly applicable to musical scores in movies. I can imagine a product where the editor/director/someone inputs a handful of variables (mood, genre, instruments, etc) and timing requests (crescendo beginning at 30s and ending at 75s, calm period from 90s - 120s, etc) and out comes a musical score for the movie that matches up with their scene editing.

<comment><USER11> Maybe more interesting for video games, where you can have a realtime input of gameplay variables.

<comment><USER12> That could be _very_ interesting.

Every gameplay a different soundtrack. Sounds fun.

<comment><USER13> Even more interesting if it allows variations in the same soundtrack according to different dramatic moments in the same scenarios. Example: a man is walking down the street vs a man is walking alone in the night down the street vs a man is walking alone in the night down the street unaware of a bright red dot on his back. All these scenarios could use the same soundtrack, but require different dramatic levels. The game would send data to the music algorithms so that the soundtrack would reflect the right mood.

</comment></comment></comment></comment><comment><USER14> While this may not be perfect composition, this is a surreal (and almost sad) moment in my life to hear music that is passable created by a computer under it's own volition. I work at a company that works with a lot of machine learning so I generally understand its limitations and haven't ever been an alarmist. That being said, I generally always thought of it being applied to automate work. For some reason I had always considered that which we normally attribute to human creativity to be off-limits. Sure now it's not great, but in 10 years will it be able to compose better music than Chopin? In 10 years, will music created by a computer surprise and delight me more than music composed by humans?

<comment><USER15> Fear not, my friend, because the execution is only a part of why music and art as a whole carries meaning for us.

Consider two tracks that are identical (forget copywrite for a minute). Between one that an AI generated and a human composed, I would personally grant the human-generated version more credit and enjoy it more. The story of how art is created and the stories of the artist are as substantial to appreciating art as a stroke of a brush or a note on a page. Computers will never replicate this until singularity.

<comment><USER16> What makes you think that a computer that can generate music cannot also generate a background for the "creator" of that music? It can give you all the stories that touch our hearts even more so than we can imagine.

<comment><USER17> Why generate a fake story? Why not communicate the real and moving journey of how a single note in the training data travelled through hundreds of neurons and thousands of matrices, and eventually made it past the final activation function to become a feature in the output tensor.

<comment><USER18> That must be a touching story, I'm sure.

</comment></comment></comment></comment></comment><comment><USER19> MuseNet will play an experimental concert today from 12-3p PT livestreamed on our Twitch channel. No human (including us) has ever heard these pieces before, so this will be an interesting showcase of MuseNet's strengths and weaknesses. Through May 12th, we're also inviting everyone to try out our prototype MuseNet-powered music generation tool.

<comment><USER20> I really, really want to see a live band or orchestra play a set of AI- composed pieces, none of which were filtered or manipulated by humans. Just generate MIDI, spit out sheet music (hopefully written well enough that it can be sight-read), and hope for the best. I'd buy a ticket for that, without a doubt!

<comment><USER21> We'll be playing generated MIDI without human filtering or manipulation today (though playing them synthetically of course)! If you know of an orchestra looking for some music, we could do the rest of what you describe :).

</comment></comment></comment><comment><USER22> This may be academically interesting, but the music still sounds fake enough to be unpleasant (i.e. there's no way I'd spend any time listening to this voluntarily).

<comment><USER23> Yes, the lack of human factor is very noticeable if you are a musician. I believe it's pretty similar to when grandmasters can tell if they are playing a human or a bot. Something that's hard to explain. Now saying if it's better or worse is just subjective.

<comment><USER24> Grandmasters also use different tactics against bots: [https://en.wikipedia.org/wiki/Anti- computer_tactics](https://en.wikipedia.org/wiki/Anti-computer_tactics)

The concept of how different human intelligence is from "AI" fascinates me, as it would seem to say a lot about the nature of intelligence and how far we are from GAI (pretty darn far).

</comment></comment></comment><comment><USER25> Something I'm curious about: If I make some music I really like through this tool, do I own the copyright to that? Can I turn generated music into an album and sell it? I'm not sure if the site does caching but if it does and me and another person generate the same music, do we both own rights to that?

<comment><USER26> I got this question a lot about my StyleGAN anime faces & GPT-2-small poetry: [https://www.gwern.net/Faces#faq](https://www.gwern.net/Faces#faq)

The legal consensus, such as it is, seems to be that (if you did not otherwise agree to a contract/license modifying this in arbitrary ways) you create a new copyright & own it if you use their music-editing tool to tweak settings until you got something you liked, because you are exercising creative control, making choices, and engaging in labor. On the other hand, if you merely generated a random sample, neither you nor anyone else own a copyright on it.

<comment><USER27> How do you prove that too? Maybe in the future somebody creates a random painting in FuturePaintGAN(TM)+3DCanvasPrinter(TM) that moves millions of people to tears and sells for hundreds of thousands in some auction house. Is that their IP?

What if that person is a monkey[1]? Is it "animal-made art"[2]?

[1] [https://en.wikipedia.org/wiki/Pierre_Brassau](https://en.wikipedia.org/wiki/Pierre_Brassau) [2] [https://en.wikipedia.org/wiki/Animal- made_art](https://en.wikipedia.org/wiki/Animal-made_art)

<comment><USER26> How do you prove anything to a court about who owns a copyright? You present what evidence you have and marshal what arguments you can, and hope that the person in the right prevails.

As your own links indicate, animals have no more copyrights any more than a computer program would because they are not human, and copyright is explicitly granted to human creative efforts.

</comment></comment></comment></comment><comment><USER28> Neat output, the project is very similar compared to the Google Doodle a few weeks back, where they generated music based off of user-submitted notes. [https://www.google.com/doodles/celebrating-johann- sebastian-...](https://www.google.com/doodles/celebrating-johann-sebastian- bach)

Since this is OpenAI, is MuseNet open source?

<comment><USER21> Not yet, but we plan to release the code & pre-trained model!

<comment><USER29> What kind of hardware (and what size data set) would you need to train with new types of music?

Doable with a single 1080ti and a couple of hundred midi files?

Also, can you do supervised learning with this - say melody input and chords (with good voice leading) output?

<comment><USER26> > Doable with a single 1080ti and a couple of hundred midi files?

A 1080ti would probably require something like several days or a week. It depends on how big the model is... Probably not a big deal. However, a few hundred MIDI files would be pushing it in terms of sample size. If you look at experiments like my GPT-2-small finetuning to make it generate poetry instead of random English text ( [https://www.gwern.net/GPT-2](https://www.gwern.net/GPT-2) ), it really works best if you are into at least the megabyte range of text. Similarly with StyleGAN, if you want to retrain my anime face StyleGAN on a specific character ( [https://www.gwern.net/Faces#transfer- learning](https://www.gwern.net/Faces#transfer-learning) ), you want at least a few hundred faces. Below that, you're going to need architectures designed specifically for transfer learning/few-shot learning, which are designed to work in the low _n_ regime. (They exist, but StyleGAN and GPT-2 are not them.)

</comment></comment></comment></comment><comment><USER30> I'm very into both music composition/production and ML, so this is neat. That being said, I think the "computer generated music" path is probably the wrong approach in the short term. Music is really complex and leans heavily on both emotions and creativity, which aren't even on the radar for AI. Being able to dynamically remix and modulate existing music is still really cool though.

I would kill for a VST tool that would take a set of midi tracks, and synthesize a new track for a specific instrument that "blends" with them. I would also kill for something that can take a set of "target notes" and break them up/syncopate/add rests to produce good melodies, or take a base melody and suggest changes to spice it up.

<comment><USER31> >Music is really complex and leans heavily on both emotions and creativity, which aren't even on the radar for AI.

I definitely think creativity is on the radar for AI, see: AlphaGo. Everything we think is based on emotions is ultimately learnable.

<comment><USER30> I don't think alpha go is a good example here. It play with strange brilliance, but I wouldn't call that creativity. If you care to elaborate on why you said this I'm curious to hear your rational.

To me, creativity is really about generation of "aesthetic novelty" which is hard to get from a ML algorithm that is trying to approximate patterns in training data. Eventually, there will be models trained on a wide variety of art, music, stories, etc that can recognize aesthetic and structural isomorphism between mediums (say between a grizzly picture and death metal), then we'll lose our competitive advantage. I don't think we're nearly so close to that as the singularity types would have us believe though.

<comment><USER31> I suppose I was loosely defining creativity as "ability to generate novelty or novel insight". People call AlphaGo created because he demonstrated a new and novel way to play that has since influenced others. AI Music will eventually teach us things about music in a similar way.

</comment></comment></comment></comment><comment><USER32> This thing sounds awesome! After hearing it, I am truly amazed at the level to which AI has evolved! It's good music... Heck, it's not just good music, it's potentially borderline (with some tweaks by human professionals) great music!

But, despite this potential greatness, if there's a problem, it's that this AI _only_ produces music...

What this AI composer really needs is an _AI lyricist_ to _write lyrics_ for the songs it composes!

Sort of like an AI Lerner to it's AI Loewe...

An AI Hammerstein to it's AI Rodgers...

An AI Gilbert to it's AI Sullivan...

An AI Tim Rice to it's AI Andrew Lloyd Weber...

An AI Robert Plant to it's AI Jimmy Page...

An AI Keith Richards to it's AI Mick Jagger...

An AI Paul McCartney to it's AI John Lennon...

An AI Bernie Taupin to it's AI Bernie Taupin...

An AI James Hetfield to it's AI Lars Ulrich...

An AI Wierd Al Yankovic... to it's... AI Wierd Al Yankovic... <g>

You know, an AI Assistant for this... AI Assistant... <g>

Well, an AI Assistant to _write lyrics_ that is... An AI "Lyrcistant"... <g>

Come on, I know there's someone in the AI world who can do this! But it might be a bit challenging... the AI would not only have to write poetry, but it would have to match that poetry to all of the various characteristics of the music...

Not an easy task, to say the least!

But, for the right AI researcher... an interesting, challenging, worthy one!

(I think I hear 2001's "Daisy Bell" playing in the background...)

By the way... disclaimer: _I am an AI_. That is, _An AI wrote this message on HN_.

No, I'm kidding about that! But... _how would you know_? (insert ominous sounding music here) <g>

</comment><comment><USER33> While I admire the effort, the music sounds quite unpleasant...

Jukedeck has significantly better AI generated music but since I have not found a description of how their model works, it is hard to compare it to this.

</comment><comment><USER34> When discussing this with my friends, an interesting question came up: Who owns the music this produces?

Couldn't one generate music and upload that to Spotify and get paid based off the number of listens?

</comment><comment><USER35> Damn, I was just about to code this!

Generative music is definitely on the come-up. If you like this, also check out [https://generative.fm/](https://generative.fm/) , which is from another HN member.

<comment><USER36> I think [https://brain.fm](https://brain.fm) also came out of HN.

I've used it once or twice, but for whatever reason, nothing sounds better to me than the music I used to listen to when I was a teenager.

<comment><USER37> >nothing sounds better to me than the music I used to listen to when I was a teenager.

Tangental, but listening to the music from your teen years is a form of therapy for people who developed dementia. It's possible the music we impress in our teen years hold a special value in our brains.

</comment></comment></comment><comment><USER38> Impressive. Would this model benefit from something like "dilated attention"? Instead of feeding it raw sound samples, we could split the input into 16 sec, 8 sec, 4 sec and so on slices, assign each slice a "sound vector" serving as a short description of that slice and let the generator take those sound vectors as input. This should supposedly let it gain global consistency in output.

Now an unpopular opinion. I'm not an ML expert, so take my words with reasonable skepticism. This fancy GPT2 model diagram can impress an uninitiated, but we are initiated, right? There is really no science there and it's still the good old numbers grinder: an input of fixed size is passed thru a big random pile of matrix multiplications and sigmoids and yields a fixed size output. We could technically replace this nice looking GTP2 model with a flat stack of matmuls and tanhs, with a ton of weights and given enough powerful GPUs (that would cost tens of millions), train that model and get the same result. It just won't make an impression of science. How are these GTP2 models designed? By somewhat random experiments with the model structure. The key here is the GPU datacenter that could quickly evaluate the model on a huge dataset. The breakthru would be achieving the same quality with very little weights.

<comment><USER5> _Instead of feeding it raw sound samples, we could split the input into 16 sec, 8 sec, 4 sec and so on slices, assign each slice a "sound vector" serving as a short description of that slice and let the generator take those sound vectors as input._

I didn't quite get it. How would you feed this variable sized input?

<comment><USER38> To illustrate more this idea, let's use soundtrack v=negh-3hi1vE on youtube. Such soundtracks consist of multiple more or less repeating patterns. The period of each pattern is different: some background pattern that sets the mood of the music may have a long period of tens of seconds. The primary pattern that's playing right now has a short period of 0.25 seconds, plays for a few seconds and then fades off. The idea is to split the soundtrack into 10 second chunks and map each chunk to a vector of a fixed size, say 128. The same thing we do with words. Now we have a sequence of shape (?, 128) that can be theoretically fed into a music generator and as long as we can map such vectors back to 10 second sound chunks, we can generate music. Then we introduce a similar sequence that splits the soundtrack into 5 second chunks. Then another sequence for 2.5 seconds chunks and so on. Now we have multiple sequences that we can feed to the generator. Currently we take 1/48000th second slices and map them to vectors, but that's about as good as trying to generate meaningful text by drawing it pixel by pixel (which we can surely do and the model will have 250 billion weights and take 2 million years to train on commodity hardware).

<comment><USER5> How would you map these chunks to vectors?

<comment><USER38> The same way we map words to vectors or entire pictures to vectors. We'll have another ML model that would take 1 second of sound as input (48000 1 byte numbers) and produce a say vector of 128 float32 numbers that would "describe" this 1 second of sound.

<comment><USER5> What would be an equivalent of a word for music?

<comment><USER38> 1 second of sound. Or a few seconds of sound.

<comment><USER5> This would rule out such common mapping methods as word2vec, because unlike words, vast majority of 1 sec chunks of audio would be unique (or only repeating within a single recording).

<comment><USER38> That's fine. The goal is to map "similar" 1 second chunks to similar vectors. I'm sure this can be done and uniqueness of sound won't be a problem.

<comment><USER5> Sure, we can probably find a way to map two similar chunks to two similar vectors. However, with 1:1 mapping the resulting vectors will be just as unique. That's a problem, because, if you recall, we want to predict the next unit of music based on the units the model has seen so far. Training a model for this task requires showing it sequences of encoded units of music (vectors), where we must have many examples of how a particular vector follows a combination of particular vectors. If most of our vectors are unique, we won't have enough examples to train the model. For example, showing the model multiple examples of a phrase "I'm going to [some verb]", it will eventually learn that "to" after "I'm going" is quite likely, that a verb is more likely after "to" than an adjective, etc. This wouldn't have happened if the model saw 'going' or 'to' only once during training.

<comment><USER38> Can we diff spectrograms to define the "distance" between two chunks of sound and use this measure to guide the ML learning process?

Would it help to decompose sound into subpatterns with Fourier transform?

Afaik, there is a similar technique for recognizing faces: a face picture is mapped to a "face vector". Yet this technique doesn't need the notion of "sequence of faces" to train the model. Can we use it to get "sound vectors"?

<comment><USER5> How would you use spectrogram diffs for training?

I'm not sure what would be useful "subpatterns" of sound. In language modeling, there are word based, and character based models. Given enough text, an RNN can be trained on either, and I'm not sure which approach is better. For music the closest equivalent of a word is (probably) a chord, and the closest equivalent of a character is (probably) a single note, but perhaps it should be something like a harmonic, I don't know.

Unlike faces, music is a sequence (of sounds). It's closer to video than to an image. So we need to chop it up and to encode each chunk.

Ultimately, I believe that we just need a lot of data. Given enough data, we can train a model which is large enough to learn everything it needs in the end to end fashion. Primary achievement of GPT-2 paper is training a big model on lots of data. In this work, it appears they only used a couple of available midi datasets for training, which is probably not enough. Training on all available audio recordings (either raw, or converted to symbolic format) would probably be a game changer.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> Not very impressive/interesting, they aren't releasing their code or models, and it seems that they had to use lots of rather obscure hacks to make the whole multi-instrument thing work. (Though I suppose it definitely _is_ impressive in other ways, especially hacking their existing GPT architecture to do something worthwhile with non-text tokens. So, I'm not saying that any sort of work should be dismissed outright!)

I do still think that the good old [https://github.com/hexahedria/biaxial-rnn- music-composition](https://github.com/hexahedria/biaxial-rnn-music- composition) (Hexahedria's Biaxial RNN/Tied Parallel Networks, also published a paper achieving SOTA at least for that time, on a variety of midi datasets) has more interesting/compelling output musically, despite starting from a comparatively tiny dataset and using rather elegant and easily-undestandable convolution- and RNN-based techniques. Too bad that the implementation relies on Theano which is quite endangered at this point (doesn't seem to support up- to-date python 3?), but I do think it's a compelling starting point if anyone really wants to work on this domain.

</comment><comment><USER39> I expect the next major copyright law legal battle will be around the question of whether content generated by some machine learning approach that was trained on copyrighted data is a derivative work or not.

<comment><USER40> Proving that a certain piece was generated from a certain dataset will be a huge obstacle.

Heck, proving a piece was generated would be hard.

</comment></comment><comment><USER41> As an amateur video producer constantly on the lookout for even some basic (as in not grammy winning, or even "artist" quality) music to add to my work that I don't have to pay a fortune to license, but don't want it to be incredibly unoriginal, this path has me excited.

</comment><comment><USER42> Nice.

We played a little with transformers inside a browser using tensorflow.js a few month ago, for real-time music transcription.

For those interested : Website : [https://gistnoesis.github.io/](https://gistnoesis.github.io/) Project : [https://github.com/GistNoesis/Wisteria/](https://github.com/GistNoesis/Wisteria/)

My project is currently on hold, but will definitely receive update in the future. As it's kind of project for fun with no hope of monetization given that the space is already crowded with Google's Magenta, and now OpenAI is joining the dance with museNet.

</comment><comment><USER43> ML models that generate music continue to improve. However, to me, the result still just seems like a novelty and nothing more. Perhaps it will take much more iteration and improvement in compute power before I hear a piece of music that I find truly inspiring that was generated by an AI.

On the other hand, I've been much more impacted by visual "art" already being generated by AIs. Perhaps the musical medium is ironically harder to crack since the format is simpler, rather like how it took longer for an AI to defeat an expert goban player than a chess player.

<comment><USER5> Have you seen a "truly inspiring" piece of visual art generated by AI?

</comment></comment><comment><USER44> Wondering if synthesizing a single _instrument_ rather than an entire MIDI file might be better, as each note could be evaluated via finite differentials. Transformer would use as input a single note from say violin or guitar. And "translate" the pitch and envelope to the new sounds. The physical simulation of music, rather than notational logic. Problem of long range order in the composition still remains unsolved, unless the model accounts for the importance of transitions in music theory. In Neural Machine Translation, characters, words, even grammatical rules themselves can pre-define such an implicit structure.

Enjoyable to the trained mind to be sure. Especially as a moment in history. But the tunes themselves lack _soul_. And jarring for myself as the background music I had turned off to catch the tail end of MuseNet's performance, was of a particularly feverish level of human expressiveness ;)

Bad Brains - Live at the CBGB's 1982 (Full Concert)

[https://www.youtube.com/watch?v=2pUlNfdnsAM](https://www.youtube.com/watch?v=2pUlNfdnsAM)

</comment><comment><USER45> This was literally a plot point in the last episode of American Gods.

So the turn-around time from sci-fi to reality is... less than a week now?

</comment><comment><USER46> What speaks to me here is this is one of the closest things we have to _creativity_ in AI and while AGI is a ways away, this is a key step, even though it may not seem like some hard tech we can put to use in industry immediately.

I think it's a subtle distinction, but imagine a model where we can throw in thousands of math proofs then give the model some initial assumptions and just let it run wild. I think getting a neural net to model the creative spark / the ingenuity is what has been missing.

A part of me doesn't want to believe that it is possible, but a part of me is genuinely curious as to the consequences.

An exciting time to be alive, folks.

</comment><comment><USER47> Was any of the work from [https://openai.com/blog/sparse- transformer/](https://openai.com/blog/sparse-transformer/) incorporated in this?

</comment><comment><USER48> I think this has great potential for content creators and their use of royalty-free music. It might just help a lot of the big copyright issues, and distinguish each person's work with a distinct score.

</comment><comment><USER49> As a sometimes composer, the thing that makes me most sad about this stuff is it's all computer or no computer. Deep learning with symbolic stuff is still in it's infancy, so I don't expect to really mix this with hand-composed stuff anytime soon. As far as I understand it as a layman, the way the input is compressed for learning is also how it's fed the sample, so there's no way to "pay more attention" to the piece your augmenting than the pieces in the training data.

</comment><comment><USER50> Can someone live stream to Twitch, collect likes or comments, and then feed back and make a GAN trained on our collective response to the musical output?

I would LOVE to see where that goes... Is it going to turn into 4 chord pop? Or maybe more dominant, more resolve-y? Or maybe my assumptions will be wrong and we would collectively train for more complex music?

</comment><comment><USER51> Am I remembering correctly that in Orwell's 1984 (the book), music and poetry was created by machines?

<comment><USER52> Yes, all this effort to generate music, with disappointing, lifeless results, is somewhat disturbing.

</comment></comment><comment><USER53> Pretty cool. Ludum Dare is coming up and this would actually be a pretty nice way to generate some music.

</comment><comment><USER54> Feels like this kind of thing would be useful for generating better jazz backing tracks. The programmatic backing tracks you get these days are good, but can be really repetitive. I wonder if there's some way to force the model to follow changes.

</comment><comment><USER55> Have anyone attempted to make a code autocomplete or snippet/boilerplate generator using this !? Would be nice when coding on mobile where its hard to navigate between code and navigation due to the small screen.

<comment><USER56> Wrong thread?

<comment><USER55> > MuseNet uses the same general-purpose unsupervised technology as GPT-2, a > large-scale transformer model trained to predict the next token in a > sequence, whether audio or text.

</comment></comment></comment><comment><USER57> Can it make ukulele music?

Perfect for youtube ads that must have obligatory music complete with the drone in the background "Pond 5.... Pond 5..." and the producer can't pitch in 5 bucks for it.

</comment><comment><USER58> How does licensing work here? Do they have the right to "merge" that music into their neuronal weights? Is there a specific license for usage in a neural net?

<comment><USER59> The legal situation of such music has been recently described as: [https://futurism.com/ai-generated-music-legal- clusterfuck](https://futurism.com/ai-generated-music-legal-clusterfuck)

</comment></comment><comment><USER60> Seems to have a hard time being the fifth Beatle. I couldn't even get a cheap Beatles feel, much a sublime melody. However, some of the piano pieces are pleasant.

</comment><comment><USER61> What makes this different than those markov chain models people used to use to generate nonsensical papers that sound real?

</comment><comment><USER62> Is this open source?

</comment><comment><USER63> Cool stuff, Christine!

</comment><comment><USER64> I just read today a tweet by one of the React Rally spokespersons how Hacker News is a toxic forum... yet it's the least toxic most data-oriented forums I've used in years.

<comment><USER65> Sorry, but I can't take anyone seriously writing this on Twitter, the most toxic platform of them all.

</comment></comment><comment><USER66> I always think, to be a better programmer requires a better understanding of art and science.

From literature, music, physics,... everything unrelated to the computer itself.

That's why every IT book needs more knowledge to teach users how to really understand art and science behind everything we experience.

</comment><comment><USER67> As a web developer, all these "do it yourself" website systems make me sick. The end results look amateur and messy most of the time, and it's an insult to the industry to give people with no visual or code-based skills the tools to create sub-par websites.

I'll bet talented musicians and real composers feel the same about MuseNet. The music probably makes them cringe to their core.

Then there is the general public...

They don't notice anything wrong with do-it-yourself websites, and this music sounds amazing.

<comment><USER68> Quite true. I've found this to be the case with almost every "composition AI" system ever created, with the exception of those that aid human composers, such as those designed by David Cope.

</comment></comment><comment><USER69> > RELENTLESS DOPPELGANGER \m/ \m/ \m/ \m/ \m/ \m/ \m/ \m/ \m/ \m/ \m/ \m/ \m/ > \m/

[https://youtu.be/CNNmBtNcccE](https://youtu.be/CNNmBtNcccE)

> Neural network generating technical death metal, via livestream 24/7 to > infinity. Trained on Archspire with modified SampleRNN. Read more about our > research into eliminating humans from metal: > [https://arxiv.org/abs/1811.06633](https://arxiv.org/abs/1811.06633)

> More albums [https://dadabots.bandcamp.com/](https://dadabots.bandcamp.com/)

<comment><USER8> Despite this being a cool feat. It sounds so close to the source material (down to parts of the songs being a lofi 1-1 copy paste), that I don't see a real point of it for even existing. (except "omg death metal neural nets lol" factor)</comment></comment>


LinkedIn IPhone App's Infinite, Swipe-Able View Implementation - <AUTHOR> http://engineering.linkedin.com/linkedin-ipad-5-techniques-smooth-infinite-scrolling-html5

<comment><USER2> I don't get the hype. Nearly every interaction with the LinkedIn iPad app feels very clunky, not to mention completely non-native. The momentum and "bounciness" of scrolling is as blatantly non-native as can be. They've done a bunch of great work to get things as close as possible, but it's still a clunky non-native experience.

<comment><USER3> I wonder the same about mobile web apps. Why try so hard to make the visual design and user experience so similar to a native app...when you're not a native app?

I'm sure LinkedIn spent an inordinate amount of time tweaking javascript to approximate native scrolling behavior, but as you note, it's just nowhere near the mark.

I commend LinkedIn for open-sourcing[0] pieces of their app, but when user experience is a paramount concern, there is no substitute for native. Ditto for Facebook's iPhone app. Most users may not be able to articulate why things don't feel quite right, but you can bet they'll notice it.

[0] <https://github.com/linkedin/LIExposeController>

<comment><USER4> >Why try so hard to make the visual design and user experience so similar to a native app...when you're not a native app?

For iOS, it's because the native apps feel good is why they're shooting for that target. Things that sorta look like them, but behave worse feel bad.

</comment></comment></comment><comment><USER5> What's the deal about the infinte scroll? Everytime I have to use it, it feels very unpleasant. The problem is the scrollbar which suddenly does not accurately hint the position of the document I'm in.

A solution might be to change the scrollbar hinting from absolute to relative. A simple ∞ added below the "scroll down button" on the scrollbar might just fix this.

<comment><USER6> What I'd like is a scrollbar absolute to the entire dataset, and some hint on how much of it is loaded.

<comment><USER5> That's where inifinite scroll _is_ a good idea. Infinite scroll is usually correctly applied to datasets where it is unknown how many items the dataset consists of. E.g. google images, tweets, et cetera.

We already have what you want, it's called a scrollbar ;).

<comment><USER6> Where the dataset size is known, but just very large, a scroll bar and lazy loading of items is what I want.

For datasets with unknown size, just make sure scrolling is only ever needed for looking at previous pages.

</comment></comment></comment></comment><comment><USER7> This attention to detail and desire to get an excellent experience is what makes an app go from good to great. I really like the LinkedIn app and since LinkedIn curate an excellent news feed I use the app for reading news and I love it.

Looking forward to reading the other articles in the series.

</comment><comment><AUTHOR> I liked the article for technical reasons, but it also got me thinking: given the relatively large percentage of views coming from IPads, at what point does it become a requirement for a developer to own one?

<comment><USER8> I assume you'd only own one if you had to work on one. Even then, it would be up to the employer to purchase it.

</comment></comment><comment><USER9> Great writeup. I am currently writing an "infinite scroll" (all directions) web app and it is good to know that someone has documented these issues.

Thanks linkedin team

</comment><comment><USER10> Anybody knows if there's a jquery plugin or similar that implements the concepts from this article? I'm in the same situation and would rather not reimplement the wheel.

</comment><comment><USER11> Is there a way to find out how much memory an app like this is using? How does it compare to Safari's memory usage?</comment>


Why Python? - <AUTHOR> http://www.linuxjournal.com/article/3882/# <comment><USER2> Fascinating statement:

 _Ugly programs are like ugly suspension bridges: they're much more liable to collapse than pretty ones, because the way humans (especially engineer-humans) perceive beauty is intimately related to our ability to process and understand complexity. A language that makes it hard to write elegant code makes it hard to write good code._

<comment><USER3> A bit wired but its really a fun read that many years later - although the truth is, his reasons for the swap in the end were probably the same as mine (although even later, because my team then wasn't using Python). And I still think Python beats any other in syntactic beauty by simplicity. Although Lua is a nice solution, too - I just don't like the end.

</comment></comment><comment><USER4> I wonder how much of this is still true. Python was a very compact language a decade ago (when I started using it), but gradually acquired bloat (perhaps because people switching from Java demanded it - decorators* ? tuples AND dicts AND lists?). I later switched to Lua, which on the whole is very similar, but has constraints that have made it _stay_ compact.

* Seriously - downvoters, explain. What do decorators actually add that wouldn't come free with non-broken lambdas? I've tried to make sure I'm not missing something, but they seem like a gratuitous workaround.

        @dec
        def somefunc(x, y):
            blabla

vs.

        somefunc = dec(fun (x, y)
            blabla)

<comment><USER5> Don't know about decorators. The real issues with Python that I find working at Red Hat (unfortunately Python and Ruby are popular choices here):

\- generally poor choices for implementation: inefficient storage of values

\- 64 bit version approximately doubles the size of all data

\- interpreted, no code generator so it's very slow

\- lack of type safety is a constant source of bugs that just wouldn't appear in other languages

\- whitespace layout screws up patches silently

Edit: don't downvote, comment on what I have to say.

<comment><USER6> \- 64 bit issue is going to be the same for all languages. Twice the pointer size, twice the data size (unless you're using a very specific type)

\- No code generators? You could complain that they're not good enough, don't support some specific extensions, don't play nice with threading, or something else, but there are many versions of python which work as compilers. Just google a bit.

\- Lack of type safety is there by design. If you want type checking, why are you even looking at duck-typed scripting languages? It's a basic design decision, not something that could be changed / improved.

\- Why is whitespace even an issue in patches? If anyone submits a patch, they should use exactly the same style as the rest of the file. If they don't, patch should be rejected. The same thing happens in projects where indentation doesn't really matter. Also, it's hard to "silently" screw up code covered by tests. Any big enough project should have those...

<comment><USER5> Thanks for replying.

The 64 bit issue is definitely not the "same for all languages". Programs get slightly bigger, but don't double in size as happens for Python programs. Most Linux 64 bit C programs will be using 32 bit 'int'. Python consumes 24 bytes to store any single int on 64 bit.

Code generators: I mean ones which anyone uses.

Lack of type safety: it may well be "by design", but it's a dumb design which causes lots of problems. Search Bugzilla for Python tracebacks and you'll see hundreds of bugs caused by lack of basic compile-time type checks. It's _easy_ for a compiler to check that a function you're calling requires 3 arguments of type foo, bar and baz, and not doing that simply causes lots of errors.

The whitespace issue is also real: if/else changes its meaning completely if you're not hyper-careful about how you apply patches (especially when you have to make manual fixes to patches to get them to apply).

<comment><USER7> I've been doing python and ruby full time for the past 8 years. In that time I can count on one hand the number of bugs which got into production because of a lack of static typing. The gain in productivity from using dynamic languages in that time far far exceeds the cost of those few bugs.

<comment><USER5> Well Red Hat have suffered from thousands and thousands of such bugs. Don't believe me? Check for yourself:

[http://www.google.co.uk/search?q=site%3Abugzilla.redhat.com+...](http://www.google.co.uk/search?q=site%3Abugzilla.redhat.com+%22traceback%22+%22AttributeError%22)

[http://www.google.co.uk/search?q=site%3Abugzilla.redhat.com+...](http://www.google.co.uk/search?q=site%3Abugzilla.redhat.com+%22traceback%22+%22NameError%22)

[http://www.google.co.uk/search?q=site%3Abugzilla.redhat.com+...](http://www.google.co.uk/search?q=site%3Abugzilla.redhat.com+%22traceback%22+%22ValueError%22)

(There are many more searches of this type you can do).

<comment><USER7> There are a few conclusions that we can draw.

Red hat engineers suck (I know this isn't true)

I'm a genius (this isn't true either)

Different types of software have different needs and we shouldn't generalize about all software development based on our particular niche. Writing code that runs on other peoples systems is much harder than writing code that will run on servers I control. Python and ruby are great for the latter. I've never done the former at the scale of redhat. Writing code with a lot of collaborators is harder than writing it with a few collaborators.

What language do you prefer for your type of work?

<comment><USER5> OCaml

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Ah, vintage, pre-batshit crazy ESR. Not a single instance of referring to anyone and everyone who disagrees with him as an "idiotarian."

</comment><comment><USER9> "Perl still has its uses. For tiny projects (100 lines or fewer) that involve a lot of text pattern matching, I am still more likely to tinker up a Perl- regexp-based solution than to reach for Python."

I liked this comment because it sounds a bit like he was saying Perl was long in the tooth. 10 years later, Perl still has its uses, and it's still used commercially.

It's also possible to enjoy languages other than your One True Favourite-Ever Language. I'm aware this might sound insane, but I'm going to leave this Python script I'm writing to fix some bugs in a Ruby gem I'm working on, and then go back to writing a daemon in Node JavaScript. Because they all have their uses and you don't need to troll/defend your favourite at every opportunity.

</comment><comment><USER10> This is pretty much my experience of learning Python but I had had drastically less coding experience than Eric Raymond did when he learnt.

</comment><comment><USER11> I came over here to say this article is about 10 years late, then noticed it was written in 2000, so I guess it was a tiny bit ahead of its time.

With python so mainstream today, I am not sure what its contemporary interest is, though.

</comment><comment><USER12> As I struggle to figure out which language to use for my Facebook game... this is not helping. :)

<comment><USER4> Don't let the perfect be the enemy of the good.

The concerns of people designing programming languages are different from people who want to write stuff _today_. Python is a reasonable choice.

</comment></comment><comment><USER13> In the year 2000.</comment>


All Visitors to Sochi Olympics Immediately Hacked [video] - <AUTHOR> http://www.nbcnews.com/video/nightly-news/54273832/#54273832

<comment><USER2> Assuming this isn't just FUD, I want to see some more details about the devices used, whether they were properly patched with the latest security updates, and also some details about the attack vectors. Sure if you are searching the web and visiting sketchy websites that are hosting malware using an unpatched device with no security updates installed you are probably going to have a bad time. But that's the case in the US too, and not a distinctly Russian problem as this is trying to claim.

I highly doubt that a properly updated device being used to browse legitimate websites will be "hacked within minutes" as this sensationalized report claims.

Edit:

I found this longer version of the story:

[http://www.nbcnews.com/watch/nbc-news-web-extra/honeypot- tes...](http://www.nbcnews.com/watch/nbc-news-web-extra/honeypot-tests- likelihood-of-hackings-in-russia-137595971642)

Basically they went to a website on the phone and ignored warnings in order to download and execute a malicious APK. On the PC they followed a link in a scammy looking phishing email to download and open a malicious Office document. On the Mac they visited a website that had an ad suggesting that they needed an "antivirus program" so they downloaded and installed it.

So yeah the devices were hacked within 24 hours, but because of stupidity, not because Sochi is especially dangerous. Nothing can help you if you deliberately ignore warnings, and deliberately install Trojan horse malware. The exact same thing would have happened to him in the US.

<comment><USER3> I agree with your thought about properly updated device. I simply don't believe that more than 5% of people (making up a number) have all of their devices properly updated, so this type of report is a fair warning to all.

</comment></comment><comment><USER4> Thorough debunking: [http://www.reddit.com/r/videos/comments/1x2t3j/all_visitors_...](http://www.reddit.com/r/videos/comments/1x2t3j/all_visitors_to_sochi_olympics_hacked_immediately/cf7sbwo)

<comment><USER5> Wow...

I guess you can't really trust anything once the propaganda ministries are involved.

Seriously though... if the reddit is true... and it sounds VERY plausible... that report was just HORRIBLE journalism.

</comment></comment><comment><USER6> The security consultant is on Twitter[1]. It looks like he's explaining things weren't "automatic"[2] and it was FUD ("TV's goal is to make it interesting.")[3] and "tv magic"[4]

1\. [https://twitter.com/lowcalspam](https://twitter.com/lowcalspam)

2\. [https://twitter.com/lowcalspam/status/431086164905181184](https://twitter.com/lowcalspam/status/431086164905181184)

3\. [https://twitter.com/lowcalspam/status/431114615893028864](https://twitter.com/lowcalspam/status/431114615893028864)

4\. [https://twitter.com/lowcalspam/status/430883194380881920](https://twitter.com/lowcalspam/status/430883194380881920)

</comment><comment><USER7> I'm sure we can expect more anti-Russia propaganda during these Olympics.

Not that it's hard to find worthy things to criticize about them, but it's funny to see what the media focuses on.

<comment><USER8> Exactly, not defending Russia, but in France too there is a dominant negative biais on how these Olympics are reported in the medias so far.

<comment><USER9> Does anyone know why or where the negative bias comes from?

<comment><USER2> I'd say it most likely has to do with the history of US and Russia relations painting perceptions of Russia. But I've definitely noticed a fairly deliberate effort from some sources to paint the absolute worst picture of Sochi.

For example there was a popular Reddit thread in which one person was publicizing lots of pictures of the trashiest, roughest, most under construction areas of the city. Another Reddit poster claiming to actually live there followed up with a response full of his own pictures of nice areas criticizing the OP for cherry picking specific pictures to make Sochi look bad.

But frankly between the stray dog killings, the seemingly rough state of hotels as publicized by Olympic journalists, this hacking scare, and Russia's vehemently anti LGBT policies there is a lot to criticize about Russia and not as much for the social and news media to praise.

</comment></comment></comment></comment><comment><USER10> this video is full of FUD..

that being said, it is trivial for a nation state to do automatic JS injection to the DOM using carrier grade MITM packet manipulation on any user-agent or cookies with en_us locale strings leaving a particular telecom provider. We now know this is standard practice even by western countries to foreigners.

Standard level of paranoia should apply if your concerned about privacy regardless if your in Sochi or Starbucks cafe in Cleveland.

</comment><comment><USER11> Avoiding any televised segment that NBC...hell, any of the 3 major broadcast networks should be a rule of thumb for anyone. They're always filled with dumbed-down, sensationalist horseshit riddled with out-of-context soundbytes and talking heads. Wouldn't be a stretch to call it a variant of modern day yellow journalism.

</comment><comment><USER12> The Loop wrote about this: [http://www.loopinsight.com/2014/02/06/welcome-to- sochi-bam-y...](http://www.loopinsight.com/2014/02/06/welcome-to-sochi-bam- youre-hacked-how-real-is-this-scenario/)

Here is a less edited version (via The Loop): [http://www.nbcnews.com/watch/nbc-news-web-extra/honeypot- tes...](http://www.nbcnews.com/watch/nbc-news-web-extra/honeypot-tests- likelihood-of-hackings-in-russia-137595971642)

</comment><comment><USER13> Thanks, NBC, for not giving me an option to stop from playing the next clip.

</comment><comment><AUTHOR> Glad to see this thoroughly debunked

</comment><comment><USER14> How ironic.</comment>