[{"data":1,"prerenderedAt":318},["ShallowReactive",2],{"project-9876868":3},{"id":4,"name":5,"line":5,"line_source":6,"title":7,"url":8,"domain":9,"maker":10,"posted_at":11,"year":12,"points":13,"comments":14,"rank_in_year":15,"shown_in_year":16,"top":17,"tier":18,"category":19,"subcategory":20,"format":21,"keywords":22,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":32,"aspects":33,"strip":41,"post_text":44,"what":45,"said":70,"maker_in_thread":172,"shape":183,"grid":186,"attempts":278,"same_week":279,"maker_shows":36,"maker_hidden":310,"reader_version":311,"card":312},"9876868","Durat.io","title","Show HN: Durat.io","http:\u002F\u002Fdurat.io\u002F?q=08%3a00+until+16%3a30+-+1+hour+-+15+minutes&%3f=","durat.io","strictfp",1436773311,2015,119,39,202,2565,8,"notable","dev_tools","time calculator","web_app",[23,24,25,26],"time zone converter","date calculator","time duration","timesheet calculation","mixed",-0.125,{"positive":30,"neutral":17,"mixed":31,"critical":17},4,0,20,{"idea":34,"design":37,"execution":38,"docs":40},{"positive":35,"critical":36},2,1,{"positive":31,"critical":36},{"positive":31,"critical":39},6,{"positive":31,"critical":31},[42,31,31,36,31,43,43,31,31,43,42,31,36,31,36,31,36,31,43,43,31,36,31,36,31,43,43,31,31,31,36,31,31,31,43,31,42,42,36],5,3,null,{"problem":46,"audience":44,"pricing":44,"motivation":53,"time_to_build":44,"stack":57,"openness":68,"stage":69,"team_size":68},{"value":47,"source":48,"evidence":49},"Calculating time spans, date arithmetic and time zone conversions","maker",[50],{"id":51,"by":10,"text":52},"9877164","Author here. I built this primarily to perform time-sheet calculations and to figure out what time it is in different cities easily when talking to friends overseas. The site is…",{"value":54,"source":48,"evidence":55},"Time-sheet calculations and checking time in cities when talking to friends overseas",[56],{"id":51,"by":10,"text":52},[58,62],{"value":59,"source":48,"evidence":60},"Java",[61],{"id":51,"by":10,"text":52},{"value":63,"source":48,"evidence":64},"java.time API",[65],{"id":66,"by":10,"text":67},"9877137","I'm currently passing on all the date calculations to the java.time API, so at least I won't have to do it all on my own. But it's sometimes a challenge to even pass it down the…","unknown","launched",{"praise":71,"objections":84,"requests":115,"questions":124,"alternatives":132},[72],{"value":73,"source":74,"evidence":75},"Useful tool for confusing time calculations","commenter",[76,80],{"id":77,"by":78,"text":79},"9878355","ejcx","Nice work. Looks like a useful tool, especially since time calculations can be confusing. Remember to sanitize your input.…",{"id":81,"by":82,"text":83},"9878143","david927","Great job! Well done.",[85,97,108],{"value":86,"source":74,"evidence":87},"Input sanitization XSS vulnerabilities",[88,89,93],{"id":77,"by":78,"text":79},{"id":90,"by":91,"text":92},"9879400","funerr","XSS? http:\u002F\u002Fdurat.io\u002F?q=%22%20\u002F%3E%3Cscript%3Ealert(1)%3C\u002Fscript%3E",{"id":94,"by":95,"text":96},"9878664","magnusstubman","The site is vulnerable to xss: http:\u002F\u002Fdurat.io\u002F?q=this%20site%20is%vulnerable%20to%20XSS%3Cscript%3Ealert(%27xss%27);%3C\u002Fscript%3E",{"value":98,"source":74,"evidence":99},"Parser errors and crashes on edge-case inputs",[100,104],{"id":101,"by":102,"text":103},"9877080","cbhl","Looks pretty good. Some nits: The query \"9999-99-99\" throws java.time.format.DateTimeParseException (http:\u002F\u002Fdurat.io\u002F?q=9999-99-99). The query \"2147483647 days + 1 day\" throws…",{"id":105,"by":106,"text":107},"9877191","sprain","My first try was \"today + 6 weeks\". Got \"Lexing failed\". My second try was \"now + 2 hours in new york\". Got \"Lexing failed\". I suppose, I doesn't understand my accent ;)",{"value":109,"source":74,"evidence":110},"Output format is verbose and confusing",[111],{"id":112,"by":113,"text":114},"9877714","acqq","Looks OK. Now looking at the examples, the answer for \"now in zone Lisbon\" gives 2015-07-13T13:31:47.968+01:00[Europe\u002FLisbon] Why not just \"today, 14:31:47, Lisbon\"? If I enter…",[116,120],{"value":117,"source":74,"evidence":118},"Support more natural syntax such as weeks",[119],{"id":105,"by":106,"text":107},{"value":121,"source":74,"evidence":122},"Simpler output format",[123],{"id":112,"by":113,"text":114},[125],{"value":126,"source":74,"evidence":127},"Meaning of 'today' across time zones",[128],{"id":129,"by":130,"text":131},"9877879","virgoerns","https:\u002F\u002Fxkcd.com\u002F1179\u002F BTW: what does \"today\" mean when your wall clock shows e.g. 23:25:00? Is it \"today in Lisbon\" or \"today at your timezone\"?",[133,144,151,158,165],{"value":134,"source":74,"evidence":135},"WolframAlpha",[136,140],{"id":137,"by":138,"text":139},"9876979","kozhevnikov","Can it do anything wolframalpha.com can't?",{"id":141,"by":142,"text":143},"9876989","DiabloD3","I came here to say this. I use WA for all my time calculations.",{"value":145,"source":74,"evidence":146},"GNU date from coreutils",[147],{"id":148,"by":149,"text":150},"9877384","przemoc","If you're *nix user, you can quite easily perform this kind of stuff using date, or at least using date from coreutils. ``` $ date -d 'today + 6 weeks' Mon Aug 24 13:15:54 CEST…",{"value":152,"source":74,"evidence":153},"Rebol",[154],{"id":155,"by":156,"text":157},"9877020","mapcars","Ever heard about rebol? >> now == 13-Jul-2015\u002F11:46:45+3:00 >> now + 4:15 == 13-Jul-2015\u002F16:01:52+3:00",{"value":159,"source":74,"evidence":160},"PostgreSQL date arithmetic",[161],{"id":162,"by":163,"text":164},"9877073","anc84","PostgreSQL also does time calculations spectacularly well.",{"value":166,"source":74,"evidence":167},"Soulver",[168],{"id":169,"by":170,"text":171},"9880079","mtourne","I've been using Soulver on mac which does a lot of similar unit calculations, conversions etc. Works with time (but maybe not as advanced) and a lot of other things.",{"comments":173,"answered":174,"key":175},15,9,[176,179,180],{"id":177,"text":178},"9879444","This is a great idea! Thanks!",{"id":51,"text":52},{"id":181,"text":182},"9877814","Thanks for your feedback. I agree that the representation is suboptimal. I will work on this if there is interest in the site. Regarding the ast representation, I will think…",{"commenters":184,"max_depth":30,"maker_replies":173,"first_comment_mins":14,"lifespan_hours":185},23,11,[187,191,193,195,197,199,201,203,207,209,213,214,217,219,222,225,227,228,230,231,232,235,237,239,241,244,245,246,248,249,251,255,257,260,262,267,270,275,277],[188,31,42,189,190,31],"9878521","project\u002Fpositive\u002Fidea","edraferi",[177,31,31,192,10,36],"commenter\u002Fpositive\u002Fidea",[51,36,31,194,10,36],"maker\u002Fneutral\u002Fnone",[112,36,36,196,113,31],"project\u002Fcritical\u002Fdesign",[181,36,31,198,10,36],"maker\u002Fpositive\u002Fdesign",[129,36,43,200,130,31],"project\u002Fneutral\u002Fdesign",[202,36,43,200,113,31],"9877922",[204,36,31,205,206,31],"9878075","other\u002Fneutral\u002Fnone","frogpelt",[208,36,31,200,10,36],"9879112",[210,35,43,211,212,31],"9877125","project\u002Fneutral\u002Fidea","haberman",[77,43,42,189,78,31],[215,43,31,216,10,36],"9878396","commenter\u002Fneutral\u002Fnone",[101,30,36,218,102,31],"project\u002Fcritical\u002Fexecution",[220,30,31,221,10,36],"9877100","maker\u002Fpositive\u002Fexecution",[223,30,36,218,224,31],"9877129","JoshTriplett",[66,30,31,226,10,36],"maker\u002Fneutral\u002Fexecution",[90,42,36,218,91,31],[229,42,31,226,10,36],"9879437",[137,39,43,211,138,31],[141,39,43,211,142,31],[233,39,31,234,10,36],"9877007","maker\u002Fneutral\u002Fidea",[105,236,36,218,106,31],7,[238,236,31,226,10,36],"9877196",[148,236,36,240,149,31],"project\u002Fcritical\u002Fidea",[242,236,31,243,10,36],"9877439","maker\u002Fpositive\u002Fnone",[169,17,43,211,170,31],[155,174,43,211,156,31],[247,174,31,194,10,36],"9877023",[162,174,31,205,163,31],[250,174,31,216,156,31],"9877149",[252,253,36,218,254,31],"9877725",10,"ysr23",[256,253,31,194,10,36],"9877805",[258,185,31,205,259,31],"9877236","ochronus",[261,185,31,194,10,36],"9877444",[263,264,43,265,266,31],"9879088",12,"project\u002Fneutral\u002Fdocs","jastanton",[268,264,31,269,10,36],"9880063","maker\u002Fneutral\u002Fdocs",[271,272,42,273,274,31],"9876964",13,"project\u002Fpositive\u002Fnone","empressplay",[81,276,42,243,82,31],14,[94,173,36,218,95,31],[],[280,285,290,295,300,305],{"id":281,"name":282,"points":283,"category":284},"9878597","Density",258,"data",{"id":286,"name":287,"points":288,"category":289},"9892049","Democracy.io by EFF",144,"web_saas",{"id":291,"name":292,"points":293,"category":294},"9889057","Actor",110,"infrastructure",{"id":296,"name":297,"points":298,"category":299},"9892515","Nestor",87,"productivity",{"id":301,"name":302,"points":303,"category":304},"9859389","Captain401",83,"finance_crypto",{"id":306,"name":307,"points":308,"category":309},"9890566","GoWork",68,"languages",false,"v2",{"id":313,"name":5,"line":5,"ai":310,"cat":19,"year":12,"points":13,"comments":14,"rec":27,"s":314,"top":17,"kw":315,"maker":10,"domain":9,"tier":18,"attempts":31,"strip":316,"url":8,"mix":317,"praise":73,"objection":86,"sub":20},9876868,-0.12,[23,24,25,26],"500103300350101010330101033000100030551",[30,17,31,17],1793990927557]