[{"data":1,"prerenderedAt":426},["ShallowReactive",2],{"project-20584508":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":44,"post_text":46,"what":47,"said":95,"maker_in_thread":194,"shape":205,"grid":208,"attempts":382,"same_week":388,"maker_shows":310,"maker_hidden":418,"reader_version":419,"card":420},"20584508","Lagukan","A highly personalized music service","title","Show HN: Lagukan, a highly personalized music service","https:\u002F\u002Flagukan.com\u002F","lagukan.com","jacobobryant",1564672475,2019,95,76,506,2195,24,"notable","consumer_social","music recommendation","desktop_app",[21,24,25,26,27],"personalized music","collaborative filtering","spotify","mopidy","mixed",0.076,{"positive":31,"neutral":32,"mixed":33,"critical":34},8,13,2,5,28,{"idea":37,"docs":39,"pricing":41,"execution":42,"privacy":43},{"positive":38,"critical":38},1,{"positive":40,"critical":33},0,{"positive":40,"critical":40},{"positive":40,"critical":38},{"positive":40,"critical":38},[40,34,45,40,40,40,40,34,45,45,40,45,34,38,40,38,40,40,40,45,40,45,45,40,45,34,40,34,34,34,40,34,45,45,45,45,45,38,38,40],3,null,{"problem":48,"audience":46,"pricing":46,"motivation":58,"time_to_build":46,"stack":69,"openness":92,"stage":93,"team_size":94},{"value":49,"source":50,"evidence":51},"Recommending music that adapts to the user's listening sessions and current mood","maker",[52,55],{"id":53,"by":11,"text":54},"20586225","I'll check nts out. Although it's not super developed yet, I do intend for lagukan to handle unstable preferences. It already kind of handles different sets of songs--i.e. it…",{"id":56,"by":11,"text":57},"20586586","In practice I think objective similarity ends up being a form of the latter, i.e. basically the average of all user's preferences. The plan with Lagukan is to have a hierarchical…",{"value":59,"source":60,"evidence":61},"Frustration with mainstream recommenders that converge on popular music","inferred",[62,65],{"id":63,"by":11,"text":64},"20588222","yeah, that's been my experience too. Hence the plan with Lagukan is to go the other way--we might start out with popular music as a guess, but it'll adapt heavily to your…",{"id":66,"by":67,"text":68},"20585667","thom","I've mostly come to the conclusion that basing music recommendations on bands\u002Falbums\u002Fsongs just doesn't work for whatever my taste is. It seems like the priors are so swamped by…",[70,76,80,86],{"value":71,"source":50,"evidence":72},"Clojure",[73],{"id":74,"by":11,"text":75},"20584511","If anyone's interested in some technical details: - The algorithm is kind of like collaborative filtering, but it filters over previous listening sessions of the same user rather…",{"value":77,"source":50,"evidence":78},"Datomic Cloud Ions",[79],{"id":74,"by":11,"text":75},{"value":81,"source":50,"evidence":82},"Mopidy",[83],{"id":84,"by":11,"text":85},"20585183","Yes, definitely! I'm working on mobile apps right now which will be super easy to use, and then I'll likely come back and improve the desktop app. The current app was optimized…",{"value":87,"source":60,"evidence":88},"Python",[89],{"id":90,"by":11,"text":91},"20585168","Glad to hear! Unfortunately there isn't an official API for google music, but there is an unofficial python API. In fact, Mopidy has a GMusic extension already. I could probably…","unknown","prototype","solo",{"praise":96,"objections":113,"requests":132,"questions":154,"alternatives":162},[97],{"value":98,"source":99,"evidence":100},"Commenters want to try it and find current recommenders weak","commenter",[101,105,109],{"id":102,"by":103,"text":104},"20586449","rileyt","I would like to try this out, but am not willing to go through the current setup process. You should add a way to be notified when you are done with the first version of the app.…",{"id":106,"by":107,"text":108},"20585143","StavrosK","Oh man... I haven't been able to find any recommendation algorithms that recommended songs I liked even 1% of. Spotify's is a trash fire. Last.fm's wasn't great. Pandora is okay.…",{"id":110,"by":111,"text":112},"20587849","lukifer","Thank you thank you thank you. I've been wanting something like this for my local MP3 collection for a while. (Might also use it for an RPi music server in the car :D)",[114,125],{"value":115,"source":99,"evidence":116},"Setup is long and laborious, needs Mopidy and Spotify credentials",[117,118,122],{"id":106,"by":107,"text":108},{"id":119,"by":120,"text":121},"20586219","rambojohnson","setting this up is profoundly laborious, not to mention risky considering I have to enter my spotify username\u002Fpassword in a config file somewhere...",{"id":123,"by":107,"text":124},"20585775","I think you need to add a step to install libspotify-dev on Ubuntu, mopidy-spotify-web from your repo wouldn't install for me unless I installed that first.",{"value":126,"source":99,"evidence":127},"Requires Google domain loading for sign-up",[128],{"id":129,"by":130,"text":131},"20586707","maximente","ah okay, yeah i'm blocking gstatic.com related: signing up with email requires loading a google domain? that's... really unfortunate. understandably probably not a priority for…",[133,137,148],{"value":134,"source":99,"evidence":135},"Easier installation",[136],{"id":106,"by":107,"text":108},{"value":138,"source":99,"evidence":139},"Google Music or YouTube Music support",[140,144],{"id":141,"by":142,"text":143},"20585093","zaphar","This is a very compelling app idea for me. However nearly all of my music is on Google Music these days so I have no easy way to use it. My listening is very eclectic though and…",{"id":145,"by":146,"text":147},"20590323","indigodaddy","Same. Would definitely want to use this if it would support GPM or YTM.",{"value":149,"source":99,"evidence":150},"Mac and Linux support",[151],{"id":152,"by":142,"text":153},"20586638","I would absolutely try it out on mac.",[155],{"value":156,"source":99,"evidence":157},"Will Spotify API approval for commercial use be granted",[158],{"id":159,"by":160,"text":161},"20586010","kingosticks","I was under the impression that using Spotify's APIs in a commercial project required an agreement with them, presumably that costs money. Have you investigated that or will you…",[163,170,177,181,187],{"value":164,"source":99,"evidence":165},"Gnoosic",[166],{"id":167,"by":168,"text":169},"20585609","heyplanet","Have you tried Gnoosic (http:\u002F\u002Fwww.gnoosic.com)? That is the one that works best for me.",{"value":171,"source":99,"evidence":172},"Spotify radio and playlists",[173],{"id":174,"by":175,"text":176},"20585854","davidjnelson","Have you tried putting 100 songs you really like that are in similar sub genres into a new playlist in Spotify, then playing the last song and letting it generate new suggestions…",{"value":178,"source":99,"evidence":179},"Pandora",[180],{"id":106,"by":107,"text":108},{"value":182,"source":50,"evidence":183},"Deezer Flow",[184],{"id":185,"by":11,"text":186},"20585997","I don't know since it's closed source, but I too would think that Spotify is already using skips, but in practice I think their methods are muddied up by other factors, like I…",{"value":188,"source":99,"evidence":189},"NTS radio",[190],{"id":191,"by":192,"text":193},"20586126","mushufasa","I've never found a perfect recommendation for me simply because data-driven approaches are 1) backwards looking and 2) assume I have a stable set of preferences. My preferences…",{"comments":195,"answered":196,"key":197},31,12,[198,199,202],{"id":74,"text":75},{"id":200,"text":201},"20584811","Thanks Dustin :) I was interested to see this other post show up on HN yesterday too: https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=20574182#20583543 At this early stage, I haven't…",{"id":203,"text":204},"20585616","I have a writeup for a previous app I made (a budgeting app) here: https:\u002F\u002Fjacobobryant.com\u002Fpost\u002F2019\u002Fion\u002F What things would you be interested in reading about? I'll likely have…",{"commenters":206,"max_depth":31,"maker_replies":195,"first_comment_mins":40,"lifespan_hours":207},26,57,[209,211,215,217,220,222,224,226,229,231,233,235,237,239,243,245,249,251,254,256,260,262,264,265,268,270,272,274,276,278,280,282,284,285,288,290,293,296,299,302,305,307,309,311,313,316,317,321,323,325,329,330,332,333,334,335,337,338,340,342,345,347,349,350,352,354,356,358,362,364,367,369,371,373,376,379],[74,40,40,210,11,38],"maker\u002Fneutral\u002Fexecution",[212,40,34,213,214,40],"20584690","maker\u002Fpositive\u002Fnone","dustingetz",[200,40,40,216,11,38],"maker\u002Fneutral\u002Fidea",[218,40,45,219,67,40],"20585596","maker\u002Fneutral\u002Fnone",[203,40,40,221,11,38],"maker\u002Fneutral\u002Fdocs",[191,38,40,223,192,40],"other\u002Fneutral\u002Fnone",[53,38,40,225,11,38],"project\u002Fneutral\u002Fidea",[227,38,40,223,228,40],"20586601","xwowsersx",[230,38,40,223,192,40],"20586649",[232,38,40,223,228,40],"20586660",[234,38,40,223,228,40],"20594324",[66,33,40,236,67,40],"other\u002Fneutral\u002Fidea",[238,33,40,225,11,38],"20585757",[240,33,34,241,242,40],"20586626","project\u002Fpositive\u002Fidea","chewz",[244,33,40,219,11,38],"20586644",[246,45,45,247,248,40],"20584985","project\u002Fneutral\u002Fnone","christiansakai",[250,45,40,247,11,38],"20585021",[252,45,45,247,253,40],"20585243","theblackcat1002",[255,45,45,247,248,40],"20588854",[257,258,40,223,259,40],"20586267",4,"jpalomaki",[261,258,40,223,11,38],"20586392",[106,34,45,263,107,40],"project\u002Fmixed\u002Fdocs",[84,34,40,210,11,38],[266,34,34,267,107,40],"20585452","project\u002Fpositive\u002Fnone",[269,34,40,219,11,38],"20585472",[123,34,38,271,107,40],"project\u002Fcritical\u002Fdocs",[273,34,40,221,11,38],"20585833",[275,34,40,221,11,38],"20585896",[277,34,38,271,107,40],"20587311",[167,34,38,279,168,40],"project\u002Fcritical\u002Fidea",[281,34,40,216,11,38],"20585642",[283,34,40,223,107,40],"20585658",[174,34,40,223,175,40],[286,34,40,287,107,40],"20587258","commenter\u002Fneutral\u002Fnone",[289,34,40,287,175,40],"20602075",[291,34,40,223,292,40],"20586697","scarejunba",[294,34,40,223,295,40],"20593236","winternett",[159,297,45,298,160,40],6,"project\u002Fneutral\u002Fpricing",[300,297,40,301,11,38],"20586044","maker\u002Fneutral\u002Fpricing",[303,297,45,247,304,40],"20586316","1290cc",[306,297,40,219,11,38],"20586365",[308,297,40,223,304,40],"20587567",[102,310,45,263,103,40],7,[312,310,40,221,11,38],"20586478",[314,31,40,236,315,40],"20588051","mjparrott",[63,31,40,216,11,38],[318,319,45,225,320,40],"20585295",9,"bravura",[322,319,40,216,11,38],"20585337",[110,324,34,267,111,40],10,[326,327,40,236,328,40],"20585930",11,"gukov",[185,327,40,216,11,38],[331,327,40,301,11,38],"20586080",[141,196,34,267,142,40],[90,196,40,210,11,38],[152,196,34,267,142,40],[336,196,40,219,11,38],"20586656",[145,196,34,267,146,40],[339,196,40,210,11,38],"20597248",[341,196,34,267,142,40],"20603708",[343,32,45,225,344,40],"20586315","p1esk",[346,32,40,216,11,38],"20586344",[348,32,45,225,344,40],"20586474",[56,32,40,225,11,38],[351,32,45,225,344,40],"20586759",[353,32,40,225,11,38],"20586792",[355,32,45,225,344,40],"20587060",[357,32,40,225,11,38],"20587105",[359,360,45,361,146,40],"20590226",14,"project\u002Fneutral\u002Fexecution",[363,360,40,361,11,38],"20593756",[365,366,45,361,130,40],"20586678",15,[368,366,40,210,11,38],"20586694",[129,366,38,370,130,40],"project\u002Fcritical\u002Fprivacy",[372,366,40,210,11,38],"20586743",[119,374,38,375,120,40],16,"project\u002Fcritical\u002Fexecution",[377,374,40,378,11,38],"20586263","maker\u002Fneutral\u002Fprivacy",[380,374,40,381,160,40],"20586685","commenter\u002Fneutral\u002Fprivacy",[383,387],{"id":384,"t":385,"points":386,"comments":38},"20554599",1564408522,19,{"id":4,"t":12,"points":14,"comments":15},[389,394,399,404,409,414],{"id":390,"name":391,"points":392,"category":393},"20624140","Zecoda",397,"ai",{"id":395,"name":396,"points":397,"category":398},"20634409","Data Structures and Algorithms in JavaScript",369,"learning_science",{"id":400,"name":401,"points":402,"category":403},"20634715","Glimpse",232,"data",{"id":405,"name":406,"points":407,"category":408},"20624371","Maesure",132,"productivity",{"id":410,"name":411,"points":412,"category":413},"20599230","Purely Functional Scripting",131,"dev_tools",{"id":415,"name":416,"points":417,"category":408},"20581915","Detoxify",117,false,"v2",{"id":421,"name":5,"line":6,"ai":418,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":422,"top":18,"kw":423,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":424,"url":9,"mix":425,"praise":98,"objection":115,"sub":21},20584508,0.08,[21,24,25,26,27],"0530000533035101000303303505550533333110",[31,32,33,34],1794036579522]