hacker news with inline top comments    .. more ..    29 Oct 2016 Ask
home   ask   best   8 months ago   
Tell HN: Enigmail 2.0 to automatically encrypt e-mails
63 points by vx17h  8 hours ago   6 comments top 3
MatoBo 6 hours ago 0 replies      
For whoever doesn't know what Enigmail is... it's a security add-on for Mozilla Thunderbird. It allows you to use OpenPGP to encrypt and digitally sign your emails and to decrypt and verify the messages received.
aleken 7 hours ago 1 reply      
Will pep handle key exchanging as well? Looks interesting, but I can't find out if/how it handles this?
newscracker 5 hours ago 0 replies      
Mods, can we have a "Show HN" prefix for this please?

I didn't realize this was just a discussion thread here, and I opened two tabs like I usually do - one for the main link and one for the HN thread. In this case I got two tabs with the same HN thread. :)

Ask HN: What did you make in Django?
12 points by pythonbull  2 hours ago   7 comments top 5
admtal 20 minutes ago 0 replies      
I built a dating site with django.

It's no longer maintained, and most likely not functioning, but still running on Heroku. (tangerine.herokuapp.com)

Here is what it looked like : http://imgur.com/a/aOgf1

DrkSephy 1 hour ago 0 replies      
A while back I created the Django Hackathon Starter [1] which was aimed to be a general boilerplate providing several out-of-the box OAuth hooks and API examples. It hasn't been updated recently, but was a pretty fun project to work on at the time.

[1] https://github.com/DrkSephy/django-hackathon-starter

s_kilk 1 hour ago 1 reply      
Not something I created from scratch, but I had the chance to work on a very large Django codebase at TVSquared.

We ended up taking out most of stock Django and only using the router and controller functions.

tedmiston 1 hour ago 0 replies      
I've built a couple dozen projects in Django, mostly closed source or for private companies. It's a really powerful framework for web apps, APIs (with DRF), and the ORM is very quick to get a prototype running as well. Django is awesome.
wayn3 1 hour ago 1 reply      
Nothing. Its just as much of a turd as Rails is. Using flask instead for simple apps.
Ask HN: How do you deal with grief?
2 points by foota  1 hour ago   1 comment top
emilburzo 51 minutes ago 0 replies      
(I'm assuming you mean grief about losing someone)

One thing that I have found to be very important is: don't fight grief.

I've realized it's a normal feeling, you should let yourself feel it, it's only worse if you try to fight it.

Remembering "the good times" with common friends/relatives/??? instead of racking your brain with the "why" also seems to make it a bit better.

Other than that, only time will fix things.

Sorry for your loss.

Ask HN: Any other blind devs interested in working on dev tools for the blind?
492 points by blinddev  1 day ago   114 comments top 48
olalonde 23 hours ago 9 replies      
I'm not blind but here's an (unsolicited) project idea for you.

To be candid, I have no idea what it feels like to be blind and have never paid much attention to accessibility other than reading a tutorial or two and making sure I use alt tags on my images. The main reason for that is that I'm lazy and based on my experience, most developers are in the same boat.

Now, if there was a service which would spin up a remote VM session inside my browser (a bit like BrowserStack or SauceLabs do) with all screen reader software setup and no screen (only audio), it'd make it a lot easier for me to experience my software as a blind user. There should probably also be a walkthrough to help new users use the screen reader and help them get started. If you're lucky, you could turn this into a business and it could indirectly help you achieve your goal of making better software for the blind by exposing more of us to your issues.

Anyways, I know you probably have more pressing issues to solve and I hope I didn't come across as arrogant, just throwing the idea out there.

russomf 2 hours ago 0 replies      
I am an adjunct professor in a CS department. I usually end up with introductory level courses, often for non-majors. This semester I have a visually impaired student in an introductory Java course who is unable to see the screen. He uses JAWS as his primary screen reader. To my great surprise, most of the tools we typically use were completely inaccessible to screen readers. I spent the first several weeks of the semester scrambling to find a reasonable set of tools that would work for him. We settled on Notepad++ and the terminal. Also, I provide him with special versions of the slide decks, readings, assignments, quizzes and exams.

I would be very interested to learn how visually impaired developers such as yourself and others got started, and for any suggestions for how I can make my student's experience more positive.


ctoth 22 hours ago 1 reply      
I'm also a blind software developer. I scrape by building apps[0] and services[1] for other blind people, and running the occasional crowdfunding[2] campaign.

First off, you're 100% correct when you talk about how devtools are inaccessible. This problem is an historic one, stretching back as far as early versions of Visual Studio, or other early IDEs on Windows. Basically, the people who build the tools make the tools for themselves, and not being blind, make inaccessible by default tooling.

I do most of my work on Windows, using the NVDA screen reader, and consequently I have the ability to write or use add-ons for my screen reader to help with a variety of tasks[3]. This being said, this always means more work for equal access, if access is even possible.

I'm interested in any sort of collaborative effort you might propose. Targeting accessibility issues in common devtools does seem to me like a reasonable place to start attacking this problem.I had read a few months ago that Marco Zehe, a blind developer at Mozilla, was pushing some work forward for the Firefox devtools[4], but haven't heard much about that recently, and I think they might be distracted trying to get a11y and e10s working together.

Basically, I'm interested in helping in any way you might suggest, and from the thread here it looks like there are some enthusiastic people at least willing to listen.My email is in my profile, let's make something awesome.

[0] https://GetAccessibleApps.com

[1] https://CAPTCHABeGone.com

[2] https://www.indiegogo.com/projects/nvda-remote-access/

[3] https://github.com/mohammad-suliman/visualStudioAddon

[4] https://www.marcozehe.de/2016/01/26/making-the-firefox-devel...

kasbah 1 day ago 0 replies      
I am sighted myself but I work with a company called Bristol Braille Technology and we are trying to make an affordable multi-line Braille e-book reader.

If you have an interest in Braille and have software development skills there might be something to do there. The UI program that drives our prototypes is open source and available on GitHub. https://github.com/Bristol-Braille/canute-ui

We have plans to open source the hardware as well.

If you want to add support at a lower level, our current USB protocol is outlined in this repository. It is a a dev-kit I knocked together to allow some Google engineers to write drivers for BRLTTY (and thus for ChromeOS).https://github.com/Bristol-Braille/canute-dev-kit

saqibs 11 hours ago 0 replies      
Hi, I'm also a blind dev - successfully been developing back-end systems and libraries at Microsoft for over a decade. There are certainly accessibility problems, but the awesome thing about being a dev is that you can also make your own solutions. Look at T V Raman at Google, and Emacspeak - which whilst not everyone's cup of tea, certainly serves him well.

For any developer, it's important to practice your craft, and when looking for a job, it's valuable to have a portfolio of work you've contributed to. So you can get multiple benefit by helping create a tool which will help you be more productive, and also show your skill.

Clearly, this project should be something that you're passionate about, but one project I've had on my when-I-have-time list is below - I would be happy to work with others who are interested (@blinddev @ctoth @jareds).

After your text editor / IDE, one of the next most important tools is a tool for tracking bugs/tasks. Unfortunately, many of the common ones, like VSTS, Jira, and Trello, are either not accessible, or at least not productively usable with a screen reader.

Over my career I've developed my own scripts for working with such systems, but it would be good to have something that others can also benefit from. I should probably put my initial bits on Github, but time is currently consumed by other projects. Email me if this interests you. Also happy to mentor on general career challenges around being a blind software engineer.

WhitneyLand 7 hours ago 0 replies      
I think you are smart to consider your developer skills as a separate thing to improve. One way to objectively measure this might be to explain a technical concept to someone.

For example, could you read this article and then give an overview of the main issues of web site performance? Could you then come up with one recommendation for a performance improvement in a code base you're familiar with? Could you justify in practical terms why your recommendation was the best bang for the buck, vs. other other possible improvements?https://medium.baqend.com/building-a-shop-with-sub-second-pa...

Now, how do you judge yourself?

1). Have the conversation with a dev whose skills and opinion you trust.

2). Record your answers on audio, and ask someone on HN to give you fair and constructive feedback. Many here would be glad to do this (feel free to ping me as well).

tarboreus 23 hours ago 0 replies      
Low vision programmer here. I've made a few tools that make my own programming easier, like a lightweight version of Emacspeak https://github.com/smythp/eloud (now in melpa) and just gave a talk on blind hackers and our tradition of bootstrapping: https://www.youtube.com/watch?v=W8_O3joo4aU Would be happy to help out with a project, email at my name + 01 + @ + gmail.com.
jareds 15 hours ago 0 replies      
I'm a totally blind developer and have some of the same issues you do. As far as Chrome dev tools go I've given up on doing any kind of UI work, partially because of accessibility and partially because it does not interest me. My current job is working on a large Java web app. Luckily my company is understanding when it comes to UI so I don't do much of that work but do a lot of API and database work. API's can be tested using curl and database stuff can be done from a command-line. The advantage to working on the app is if accessibility gets completely broken it's discovered early and made to work well enough. We use Eclipse as an IDE and it works pretty well with Jaws. I've used IntelliJ a bit and it's what I'd call barely usable. I am hoping it will continue to improve, the impetus for adding accessibility appears to have been Google switching from Eclipse to IntelliJ when coming out with Android studio. Hopefully Google will continue to insure accessibility improves. As far as JIRA goes I agree with you. I'd really like to hear from Atlassian why they can't display dashboards and issue lists using tables to provide any kind of semantic information. I've found your best bet with JIRA is to have someone sited help set up filters that display what you need. Export the results of the filter to Excel and you can brows a lot of issues quite quickly. I haven't used Gitlab but find Github to be fairly easy to use in the limited experience I have with it. I'm not particularly interested in building tools from scratch since I don't have a lot of free time but would be interested in trying anything that comes out of this.
WhitneyLand 6 hours ago 1 reply      
Would it be helpful for a news site or blog to call out software that won't take easy steps to improve accessibility?

My sight issues are not comparable to being blind, but as an example, I've asked Pandora for simple accessibility improvements for years and they never take action. Have even offered to write (less than a page) the code for them.

Would they (and software tool vendors) feel the same way if this were highlighted on a high traffic web page?

AtomicOrbital 23 hours ago 2 replies      
I am working on a project to parse an image which then synthesizes an audio representation which retains all the information of the source image ... next step is to parse live video to enable people to hear what others see ... shoot me an email as well ... its not specific to dev tools yet could parley into a general enabler ... I am using a Hilbert Curve ... nice intro video at https://www.youtube.com/watch?v=DuiryHHTrjU
chrisdotcode 1 day ago 0 replies      
I'm not blind, but I would certainly like to contribute where I can. Shoot me an email (it's in my profile).

The world can certainly use more open source accessibility standards, protocols and tools.

Anm 4 hours ago 0 replies      
I'm part of the Blockly team (https://developers.google.com/blockly/), an open source project for visual drag-and-drop programming, usually targeting kids. Despite being a "visual programming editor" first, we are exploring blind accessible (i.e., screen reader ready) variants of our library.

See our first demo: https://blockly-demo.appspot.com/static/demos/accessible/ind...

Right now, it is effectively a different renderer for the same abstract syntax tree. We'd love to see people evaluate the direction we are currently going, and possibly apply the same accessible navigation to our existing render.

In terms of dev tools, Blockly blocks are usually constructed using Blockly (https://blockly-demo.appspot.com/static/demos/blockfactory/i...). That said, no one has considered what it would take to make our dev tools blind accessible. The fundamentals are there.

Granted, Blockly programming is far from being as powerful as other languages. It is aimed at novice programmers, whether for casual use or to teach the fundamentals of computational thinking. You can write an app in Blockly (http://appinventor.mit.edu/).

If anyone is interested, reach out to us: https://groups.google.com/forum/#!forum/blockly

hippich 1 hour ago 0 replies      
If you develop frontend stuff, please get in touch at pavelkaroukin@gmail.com . Company I work at developing single page app for higher ed and we constantly struggle with proper practices to make UI to be accessible to people with bad sight. Who knows, maybe it will perfect opportunity for both you and my company.
WalterBright 17 hours ago 0 replies      
I would very much like to make the D programming language dev tools work better for visually impaired users. Any suggestions you can give would be welcome, pull requests even more so!


mwcampbell 1 day ago 0 replies      
Out of curiosity, what operating system and screen reader(s) are you using?

As a partially sighted developer, I generally use a screen reader for web browsing and email, but read the screen visually for my actual programming work. So I don't have significant first-hand experience with the accessibility (or lack thereof) of development tools. But some of my totally blind programmer friends have expressed some frustration with the accessibility of some tools, especially web applications. They generally use Windows with NVDA (http://www.nvaccess.org/). At least with NVDA, you can write add-ons (in Python) to help with specific applications and tasks.

tedmiston 22 hours ago 2 replies      
Any chance you could start with an education component? I think most of us don't really know the nuances of a blind developer's workflow, especially which tooling breaks down where and if there is anything that is infeasible.
artpi 19 hours ago 0 replies      
Currently, I'm launching an app that is reading Slack messages out loud - Team Parrot http://teamparrot.artpi.net/ .Once launched, it will be open source (built in react native)If you think it's useful, I will welcome contributions.

I am not blind, but I designed it to operate without looking at screen.If the app will take off, I'm considering into forking/pivoting into RSS reader that also is not using screen. App is already accepted in the app store, I'm sorting out launch details.

Please accept my deepest apologies for the shitty job we (the developers ) are doing at providing interfaces for vision impaired.

Probably when we're all old, we'll have vision problems of our own :).

norcimo5 1 day ago 0 replies      
Yes please! I'm not blind either, but would love to collaborate / contribute also. My email address is in my profile. Thanks.
ezufelt 6 hours ago 0 replies      
I am a completely blind developer and have been working on and off with code for about 20 years. When I started I was able to see well enough to work without the assistance of a magnifier or screen-reader, now I rely completely on VoiceOver and JAWS.

I too find frustration with some of the tools with which I work. Although they may slow me down, they seldom create complete barriers. Most of my work at this point in time is with PHP and Javascript, so this may help the situation, I am less familiar with the current state of affairs of the accessibility of developing with other languages.

All of the complaining I do about JIRA aside, I do find it to be a reasonably usable tool for what I need (page load times annoy me far more than accessibility issues). There are some tasks that I cannot complete (reordering backlog items), but I collaborate with team members, which can help us all to have better context about the rationale for changes.

Gitlab I find quite poorly accessible, but thankfully it is just a UI on top of an otherwise excellent tool (git). I find that the same trick that works with evaluating GitHub PRs works with Gitlab MRs. If you putt .diff after the URL to a PR or MR, you can see the raw output of the diff of the branches being compared.

Debuggers are definitely my biggest current pain point. I tend to use MacGDBp for PHP. This is quite reasonably accessible. It allows me to step through code, to see the value of all variables, and to understand the file / line number being executed. It isn't possible to see the exact line of code, so I need to have my code editor open and to track along.

I haven't found a very accessible Javascript debugger. For Javascript and DOM debugging I still find myself using Firebug. I use lots of console.log() statements, and would rather be able to set breakpoints and step through code execution. That being said, other than "does this look right?", I find there is little that being blind prevents me from doing with Javascript. As recently as last night I was squashing bugs in a React app that I am helping to build for one of my company's customers.

I'd be happy to learn more about any projects you take on to improve web application development tools and practices for persons with disabilities. Feel free to reach out on LinkedIn if you would like to talk.


nstj 8 hours ago 1 reply      
One of the best (and most engaging) HN threads of the year from my perspective. So much better than "$STARTUP raised an n hundred million dollar series Q" on TechCrunch article.

Thanks @blinddev.

nbonatsakis 20 hours ago 1 reply      
Legally blind developer here. I still have some vision in one eye and I make extensive use of it as far as being able to primarily code with screen magnification and some spoken text for select code all using OS X). I've had good success in my career but I will say I've had to at times work a lot harder to get the same results as fully sighted coworkers.

I'm mostly responding to encourage you to keep at it, and if you haven't tried Mac OS, maybe give it a whirl. Apple is pretty good about accessibility and their accessibility team is very good at accepting and acting upon feedback.

julian37 13 hours ago 0 replies      
I know you're asking for collaborators and not recommendations for tools, but since you were mentioning Chrome Devtools I wanted to make you aware of kite.el [1] which I believe TV Raman had working with Emacspeak [2] at one point. kite.el is unmaintained, but it might make for a good starting point?

[1] http://github.com/jscheid/kite[2] http://emacspeak.sourceforge.net/

rhgraysonii 1 day ago 1 reply      
I have a tool I'm working on that is specifically geared towards assisting the transcription of printed books to braille for The Clovernook Center for the Blind [1] built on top of Atom as an extension.

A super-rudimentary basic version will be something I finish when I've the time in the coming months. I was hoping to get some interested from the blind community and get ideas for further OSS work involving that general space (editors).

cignext 12 hours ago 0 replies      
I am not blind but my daughter has albinism and low vision as a result. I have been looking to find ways to contribute and make it easier for her and others.

I would be happy to help.

dmytroi 22 hours ago 0 replies      
Not a blind dev, and would love to help community as much as possible, though I don't even know where to start :( Would be really helpful to have centralized place which directs developers effort to valuable open source projects.

Another interesting idea: try using braille screen for ourselves, so we as dev's will be able to work at complete darkness without any light :)

Boothroid 9 hours ago 0 replies      
I'm almost completely blind in one due to an eye condition and would be interested in being involved.
elil17 18 hours ago 0 replies      
Dear blinddev,

I'm a seeing student with an upcoming six week block of time to do a out of school project. I have previous experience developing accessable software and would love to work with you. If you're interested, shoot me an email at eliaslit17@gmail.com

hendekahedron 12 hours ago 0 replies      
I'm not blind but I have very poor eyesight in my left eye which makes reading tiring so I started this experimental Morse-based system https://github.com/Hendekagon/MorseCoder for the Apple trackpad. It's not very successful. What I really want is a fully haptic dynamically-textured surface.
eivarv 1 day ago 0 replies      
Im not blind either, but I too would be interested in contributing.

Send me an email; my address is in my profile.

johnwheeler 16 hours ago 1 reply      
I created a framework for the Amazon Echo. I've been curious if it could help the blind. My e-mail is John At John Wheeler Dot Org. I'd be willing to help you if you could use me.
datashovel 18 hours ago 0 replies      
I'd be interested in discussing this with you further offline. I'm not blind, but definitely interested in exploring ways to help. If you add some information to your profile about how to reach you I'll reach out.
saverio-murgia 21 hours ago 1 reply      
I am not blind but might have the chance to offer you a dev job (related to blindness). Here's the product we are working on: http://horus.techJust send me an email at saverio at horus dot tech if interested
pdevr 21 hours ago 0 replies      
I am not blind, but would very much like to contribute. I have been developing tools and applications for a very long time now.

Do let me know how to contact you.

mst 16 hours ago 0 replies      
There's a guy called Octavian Rasnita who's a blind perl developer who I've met before. We basically never agreed on anything but he always disagreed with me intelligently. You might be able to contact him by emailing user teddy on domain cpan.org. No idea if he's a good person to talk to or not tbh but I've always found him worth arguing with.

If you do contact him please blame me so he can shout at me, not you, if I made the wrong guess here.

jlg23 21 hours ago 1 reply      
> I'm looking at you JIRA, GitLab, Chrome Dev Tools, etc.

I'm not sure that using tools that try to provide a good visual experience is the right approach. Have you tried writing scrapers that provide an optimized textual representation?

evincarofautumn 12 hours ago 0 replies      
Im a programming language developer, and Im interested in developing languages and programming environments for the blind and visually impaired, or at least making existing languages more usable. Feel free to get in touch.
nanch 14 hours ago 0 replies      
I'm making web apps and mobile apps and I'd like to learn how to make my apps more accessible. Is there a community where I can ask for assistance with accessibility testing? I'd be willing to pay for testing. Thank you kindly. Nanch.
misiti3780 1 day ago 0 replies      
I'd help, shoot me an email. (I'm not blind)
azhenley 20 hours ago 0 replies      
My research is on dev tools so I have a huge interest in this. Also, I interned at Microsoft Research and got to meet a few of their blind devs and how they are building tools to support others.

There is also a fair amount of research out there on the topic (see Richard Ladner at UW).

Feel free to send me an email if you get anything going!

connorshea 21 hours ago 0 replies      
Out of curiosity, what kind of developer are you? (e.g. languages you know, frameworks, platforms, etc.)
neoncontrails 8 hours ago 0 replies      
Sighted person here. I'm very interested in this question. Most developers I know are not considering accessibility as part of the intrinsic design of an app. Blind people are more keenly aware of this problem, unfortunately, because it affects them a little more directly. Accessibility to screen reading clients is considered a "good to have," nonessential, an optimization. And yet when you ask the same people if search engine optimization is considered a "good to have," many will laugh and say no, that it is a necessity, if for no other reason than their clients demand it.

Clients want sites that implement current SEO best practices. What sort of best practices are those? A Yoast SEO plugin, maybe. Developers often mention the URL structure of the site itself, say it's "clean." This might be appreciated by future admins of the site, but it's unrelated to the goal of making pages that can be scraped.

It surprises me developers and SEOs overlook the difficulty of scraping the web. Keyword density does very little to help a page that cannot easily be serialized to a database. It's true that machines have come a long way. Google sees text loaded into the DOM dynamically, for example. But its algorithms remain deeply skeptical of ( or maybe just confused by ) pages I've made that make a lot of hot changes to the DOM.

And why wouldn't it be? I ask myself how would I cope with a succession of before and after states, identify conflicts, and merge all those objects into a cached image. Badly, sure. At this point, summarizing what the page "says" is no longer a deterministic function of the static page. Perhaps machine learning algorithms of the future will more and more resemble riveting court dramas where various mappings are proposed, compared to various procedural precedents, and rejected until a verdict is reached.

I wasn't very good at SEO. I found web scrapers completely fascinating, I spent way more time reading white papers on Google Research and trying to build a homemade facsimile of Google. Come to think of it, I did very little actual work. But I took a lot of useful lessons that have served me well as a developer.

I realized, for example, how many great websites there are that are utterly inaccessible to the visually impaired. With very few exceptions, these sites inhabit this sort of "gray web," unobservable to the vast majority of the world's eyeballs. The difficulty of crawling the web isn't simply related to the difficulty of summarizing a rich, interactive, content experience. They are instances of the same problem. If I really wanted to know how my site's SEO stacks up against the competition, I would not hire an SEO to tell me, I would hire a blind person.

egonschiele 21 hours ago 0 replies      
Not blind, but interested!
Mz 22 hours ago 0 replies      
I am not blind nor a programmer. But I do have serious eyesight problems and other handicaps. I also have moderating experience. Given the number of people saying "Shoot me an email" I have gone ahead and set up an email list via Google Groups called Blind Dev Works. If anyone wants to use that as a collaboration space, shoot me an email (talithamichele at gmail dot com) and I will send you an invitation.
UserNamesStupid 19 hours ago 0 replies      
I wish you well and will help in any way that I can. ld
camlorn38 3 hours ago 0 replies      
I'm a blind programmer. I'm currently working on the Rust compiler [0] and a large library for 3D audio that is essentially desktop WebAudio [1]. I'm the kind of person who people often ask for help with their college classes because I went through everything without trouble and came out of college with a 3.9 GPA, and the only reason I'm not making significant amounts of money at the moment is that I have other health problems that I won't go into here (but I would trade with someone who is only blind in a heartbeat). I think I am qualified to say that this is a bad idea.

Firstly, just offhand, the following stacks should be fully accessible with current tools: Node.js, Rust, Python, truly cross-platform C++, Java, Scala, Ruby, PHP, Haskell, and Erlang. If you use any of these, you can work completely from a terminal, access servers via SSH through Cygwin or Bash for Windows, and do editing via an SFTP client (WinSCP works reasonably, at least with NVDA). Notepad++ also makes a perfectly adequate editor, again with NVDA; I'm not sure about jaws if you're using that.

GitHub has a command line tool called hub that can be used to do some things, and is otherwise pretty accessible. Not perfect, but certainly usable enough that NVDA (one of the most popular screen readers) uses it now. Many other project management systems have command line tools as well. If you write alternatives to project management tools, you will have to convince your employer to use them. Replacing these makes you less employable. You need to work to make them accessible, perhaps by getting a job on an accessibility team.

The stacks you are locked out of--primarily anything Microsoft and anything iOS--can only be fixed with collaboration from the companies backing them. Writing a wrapper or alternative to msbuild that can let you do a UWP app without using the GUI is not feasible. I have looked into this. Doing this for Xcode is even worse, because Xcode is a complicated monster that doesn't bother to document anything--Microsoft doesn't document much, but at least gives you some.

I imagine this is not what you want to hear, but separating all the blind people into the corner and requiring custom tools for everything will just put us all out of work. if you're successful, none of the mainstream stuff that cares even a little right now will continue to do so, and you'll end up working on blind-person-only teams at blind-person-only companies.

0: My most notable Rust PR is this monster: https://github.com/rust-lang/rust/pull/361511: https://github.com/camlorn/libaudioverse

mtrycz 12 hours ago 0 replies      
> I'm looking at you Chrome Dev Tools...

Puns aside, Who on earth would make a blind person work on UI? I think it's better that you parted with them, even tho I'm sorry you have trouble finding a good job.

Best of luck.

gentleteblor 18 hours ago 0 replies      
I'd like to help.
Ask HN: What are the best personal project websites you've seen?
499 points by Xcelerate  2 days ago   282 comments top 130
unimpressive 6 minutes ago 0 replies      
I haven't seen very many personal project sites I'm afraid, but Neil Cicierega's looks nice:


Mine looks..less nice, but has the benefit of being straightforward and fast-loading:


(This thread is certainly giving me some motivation to go fix it up some more.)

dougk16 2 days ago 20 replies      
First the master: http://worrydream.com/

Surprised nobody's posted it yet.

Other people are also posting their own, so here's mine: http://www.dougkoellmer.com/

Other job-hunt-specific efforts:http://www.dougkoellmer.com/portfolio/http://www.dougkoellmer.com/resume/http://www.dougkoellmer.com/games/

Can't be totally sure but I believe they've gotten me a job or two.

sogen 2 days ago 1 reply      

Stumbled upon this one yesterday, it's from a paper, but well written:https://mzucker.github.io/2016/09/20/noteshrink.html

A long time favorite writer:http://www.frankchimero.com/writing/the-webs-grain/

jjp 2 days ago 0 replies      
Content, content, content and then presentation.

You need to think of yourself as the product and work out what's the best way to describe and package the skills and experiences that you have already acquired and how they can be applied to whatever your target companies are looking for.

Also think about whether you are using your portfolio site for lead generation or lead qualification. Lead generation means that you'll have recruiters finding your portfolio off the back of your SEO and they contact you. Whereas lead qualification means you are selling your self to a hiring manager/expert after they've read your resume and decided that they want to check your credibility before interviewing.

actualdc1 2 days ago 1 reply      

Does gwern fall into this category? While I'd need to know more about what he's like in person, the author certainly seems like a technically competent individual.

Ruphin 2 days ago 2 replies      
I must say http://acko.net is easily the most impressive personal site I've visited.

This is mine: https://ruph.inIt's something I threw together recently, but it's still missing some content. I like the style though :)

brudgers 2 days ago 1 reply      
Designing a personal website can be an interesting learning experience and an engaging creative act expressing a strong sense of aesthetic judgment and philosophy. On the other hand, there's something to be said for not overcooking the pudding and just giving the user what they're likely to be looking for.




beefman 2 days ago 3 replies      
Daniel Johnson's blog is hard to beat


Stephen Wittens' site is another that comes to mind


chris_7 2 days ago 4 replies      
It seems like a lot of these are very promotional - using a lot of superlatives to describe the person, and all of their work/accomplishments. Is this necessary? I feel very uncomfortable doing that sort of thing, it feels cringey I guess.
octref 2 days ago 2 replies      
ollerac 2 days ago 3 replies      

 from scratch, no css framework responsive portrait by alisabishop.com
i'd love feedback!

edit: feel free to use it as a template for your own site! https://github.com/panphora/davidmirandainfo

jswrenn 2 days ago 0 replies      
These two, by Jack Qiao: http://jack.works/http://jack.ventures/

These sites have set the standard of beautiful personal website for me. Despite their modern appearances, they're both just static sites, generated with bash: https://github.com/Jack000/Expose

Gigablah 2 days ago 2 replies      

A jaw-dropping website by Steven Wittens that pushes the boundaries of what your browser can do. Nothing I've seen has ever topped this wizardry.

(You should view it on desktop, with WebGL capability.)

Kequc 2 days ago 1 reply      
Design is entirely personal preference. Therefore information-first is a good bet if you want to absorb as large of a demographic as possible. Keep the layout and page design simple. Load times should be fast or nearly instant for that sleek professional feel.

Minimalist modern design, sans any kind of framework (like Bootstrap for example) is the name of the game.

icco 2 days ago 1 reply      
http://natwelch.com is mine, I use it more as a cover letter to try and get people to contact me. It works somewhat well.

I love looking at people's personal sites though. I've got a small index of them from over the years at http://pinboard.in/u:icco/t:personal.

patmcguire 2 days ago 0 replies      

It's an interactive Game of Thrones map. It shows you where everyone is at a given time. You select who you want to track, drag through time and the character path trails show up on the map. The interface is genius, best I've seen for messing around with (thing, place, time) triples.

tbrock 2 days ago 0 replies      
Man page formatting for the win, no bull shit:


jefflombardjr 2 days ago 0 replies      
Simple and Functional: http://andrew.hedges.name/

A horrible website for horrible people (in the style of CAH): http://jefflombard.com/

(full disclaimer last one is my own site, anyone is welcome to clone it, it's based off of cards against humanity and available under creative commons: https://github.com/jefflombard/jefflombard.com)

blobman 2 days ago 3 replies      
I've been running my personal projects website ( http://www.michalpaszkiewicz.co.uk ) for just over 2 years and I get a job offer almost every week (not just the typical spamming recruiters, but startup owners who said they liked my work). I'm also pretty certain I got my current job due to the fact I could impress my interviewers with my open source code. My design isn't great but what counts is the amount of material that is out there and how good it is. I'm not looking for design jobs, so my lack of design skills doesn't matter.
protomikron 1 day ago 2 replies      
http://bellard.org :) Content wins.
trengrj 1 day ago 0 replies      
I love this one: http://mrdoob.com/

I've just updated my blog and would appreciate any feedback https://trengrj.net/

sudhakarrayav 2 days ago 1 reply      
When I did put myself in potential recruiters shoes, I came up with this one page drawing to quickly showcase what I am and what I know


It was even helpful to kickstart conversations in meetups / other technical gatherings

xoher 2 days ago 0 replies      
I'm surprised no one has posted about Andrej Karpathy.


eknight15 2 days ago 2 replies      
Mine, for UI/UX design: https://evanwknight.com
wkoszek 2 days ago 1 reply      
I feel like a lot of people in this thread show very flashy websites. But honestly, if your work is decent, some people will notice regardless of how you present it. Since you ask this question, I doubt you'd make your website total crap.

Most of the time more people e.g.: watch my github page: http://github.com/wkoszek page than my real website http://www.koszek.com since its harder to find you on a separate website. This is unless you market it.

To summarise: enter the http://cr.yp.to/ and see how good the content is and how you're ok with no form too, if content is outstanding.

irl_zebra 2 days ago 0 replies      
I saw one on here that I've bookmarked and have been using pretty frequently. Great for getting a file over to a group of people I think. I used it once for myself as well, pretty neat!


louismerlin 2 days ago 2 replies      

Kept it minimal :)

djmill 2 days ago 0 replies      

This is a site I built for myself, friends, and the public; however, I haven't promoted it much... Trying to get more users, but it's been under construction for a while. Nothing fancy, but I wanted to build something that was free for users.

Also to the poster: side projects are great, showing off your pet project is awesome, but I can say that a lot of employers don't even care to look at them... I cannot speak for ALL employers, but a lot of the time interviewers and employers don't have the time to poke around in your side projects - they're very busy too. It's kind of a shame

aub3bhat 2 days ago 0 replies      
I am a graduate student with similar goals (though already have a job)

Here is my site:


I optimized it for following:

0. Responsive

1. Easy to understand layout

2. Images to highlight projects

3. A professional picture.

4. Contact & email information.

Don't bother fighting email collecting bots, they already have billions of them due to breaches and most likely yours if it appears on Have I Been Pwned. Rather I recommend optimizing on usability and making it easier for human reader to send you an email.

Note: The design looks slightly different on desktop and mobile. E.g. on desktop it loads institution logos and uses a two columns or efficient use of the space.

dmvaldman 2 days ago 1 reply      
I happen to like my own. Go figure. http://samsarajs.org

It's a UI library for animating 3D web stuff, so it should look pretty. Suggestions to improve are welcome!

lukaszkups 2 days ago 1 reply      
Like many of before me, I'll share my own website (currently in redesign, so I'll provide links via internet archive) - built in Nanoc3, hosted on github pages:

Main page: https://web.archive.org/web/20150801213611/http://lukaszkups...

Experience page: https://web.archive.org/web/20150826004819/http://lukaszkups...

About page: https://web.archive.org/web/20150826004912/http://lukaszkups...

Contact page: https://web.archive.org/web/20150826004918/http://lukaszkups...

Blog page: https://web.archive.org/web/20150826004935/http://lukaszkups...

I will release new design next week, based on brand-new static site generator ;)

clebio 1 day ago 1 reply      
patricklynch 2 days ago 1 reply      
Sarah Federman - http://sarah.codes/

Sarah Drasner - http://sarahdrasnerdesign.com/

Assume whoever looks at your portfolio is going to scroll from top to bottom first, get a first impression, then _maybe_ click through things later.

So build for the question "What do I want people to see if they scroll through my site without clicking on anything?"

pimterry 2 days ago 1 reply      
Sara Soueidan's is pretty great - https://sarasoueidan.com/ - especially the speaking section. She's amazing generally though, so it's quite a high bar!

I had some good feedback on mine as well - https://tim.fyi - and I'm pretty happy with it (love to hear what other people think too though). After the intro though, it's more about highlighting recent specific projects and talks and articles, rather than acting as a full CV. Sounds like that might be what you're going for?

If I were you, I'd keep it simple. Go for a short simple intro that highlights what you're about, a two or three sentence summary of what you've done and what you're good at, and then keep the body as something that gives more of a feel of what you're about and up to right now. Links to blog articles, things you're tweeting about etc.

You can provide an actual CV for people who want to dig into the details of your list of achievements and research in more detail, but if this is the first place people hear about you and it's your personal site, then a sense of personality and active things going on is more important imo.

StavrosK 2 days ago 0 replies      
Going by what I do, the answer to your question is a bit problematic. I don't work on projects for others, I work on them for myself, and merely like showing them to others, so I'm bad at keeping a list of everything in one place and up-to-date.

That said, I did try to create a single page of some of my projects so people can look at them more easily: https://www.stavros.io/projects/

The other day I also decided to give my resume some love, so I created a single page with side-projects I believe to be worthy of mention: http://resume.stavros.io/

Maybe those two will give you some idea. I've scrolled through some of the other responses in this thread, but I'm not sure I like the project sites that are tech demos themselves. They seem to conflate "optimizing the listing of projects" with "optimizing showing a project". Most of the linked sites are great tech demos, but very bad at getting me to click on the actual posts themselves. Then again, maybe mine is worse.

andreesg 1 day ago 0 replies      
Interesting how this question is becoming a source of examples for personal website!

Mine: http://www.goncalves.me

Some nice ones on top of my head:

* http://victorfern91.github.io/

* http://www.rleonardi.com/interactive-resume/

* http://jon.gold/

hnarayanan 1 day ago 0 replies      
Also posting own website: https://harishnarayanan.org/

As the original poster, I too have been through many years of grad school. I have not needed to interview for jobs, and believe my website has sold me well.

blueatlas 2 days ago 0 replies      
hairy_man674 1 day ago 0 replies      
Here is the ideal of what every site should look like:


edit: Seriously, why does a site need to be like a fucking pop-up book?!

fredley 2 days ago 0 replies      
A personal project website that's a personal project in itself.
Oras 2 days ago 0 replies      
A blog about stuff you worked on and challenged you tackled will be more than enough for potential employer.

Not sure if it fits the context but have a look at Matthias Noback website http://php-and-symfony.matthiasnoback.nl/

Timethy 2 days ago 0 replies      

A one man hardware & software powerhouse. He is an old-school EE in Japan and his personal projects are astounding in breadth and depth.

His SD Card and FFT libraries are classics. His hand wired SMT circuits are works of art.

MandieD 1 day ago 0 replies      
https://dbatools.io - started as a solo project, which the lead developer has gotten others involved in. The site is simple, the descriptions of each of the cmdlets (functions) are excellent.

Every open source project needs a site like this.

fitzwatermellow 2 days ago 0 replies      
Something useful, indeed.

Perhaps a teaching-focused site that explicates all the tips and tricks you've gleaned about atomic microscopy. Maybe featuring a WebGL microscope simulator. And extensive Youtube tutorials for beginners.

Or a data bank. Resources that would appeal to researchers rather than students. Modelled after something like the Electron Microscopy Data Bank:


Your goal is simply to convey that when it comes to this particular characterization technique, you're the world's #1 expert. Not so different than the inbound-style, content-rich influencer marketing all of us are seeking to master here ;)

Good luck!

viiralvx 2 days ago 0 replies      
I guess I can post my own, although there's not that many projects on there: http://iheanyi.com

Also feel free to peep my old one: http://iheanyi.github.io. I didn't like this one because it was too image heavy, but I did like the layout of case studies better in this iteration than in my new one.

And I guess another old iteration I was using when I was looking in college: http://old.iheanyi.com. Yeah, I know. I re-design my website a lot.

kersny 2 days ago 1 reply      

Maybe not exactly what you're looking for, but its simple and clicking through any project makes me to want to work with and/or hire him immediately.

Tepix 1 day ago 0 replies      
Bruce Simpson "The low cost cruise missile" http://aardvark.co.nz/pjet/cruise.shtml

Alas, the project was not finished... (the NZ government intervened)

jarboot 1 day ago 0 replies      
Here's a cool little corner of the web from the cyberpunk crowd, reminiscent of geocities.


kepoly 2 days ago 1 reply      
Creating an account just to post this (it's not mine): http://www.rleonardi.com/interactive-resume/
0xCMP 1 day ago 1 reply      
@@@@ Self Promotion Disclaimer @@@@

I think my personal site is a very nice minimal site: https://cmp.is/

I strive to have as little js/css as possible. Currently only has Google Analytics and whatever Cloudflare wants to stick in there. I have to simplify the CSS to the bare basics eventually. I use Hugo to build the site and I get to post many different kinds of posts like links, notes, and real full posts.

javierbyte 2 days ago 0 replies      
I'm posting my own too:


It's an auto updated portfolio with my github, dribbble, and some other social networks.

sailfast 2 days ago 0 replies      
I've always liked Bret Victor's site, due in no small part to the amazing content: http://worrydream.com/
pascalxus 2 days ago 0 replies      
One of the ones I really like is http://www.find70.com It's a great way to find your first customers, business partners and affiliates. It's an advanced form of twitter search that let's you target accounts based on their bios and many other filters, including contact info: email/phone number, follower count, location, etc. Disclaimer: I created it. Let me know what you think.
6stringmerc 2 days ago 0 replies      
Though not a 'personal website' per se, I've been in contact with the creator / host and it was most definitely a 'Personal Project' mating technology skills with a purpose, and I believe it's one of the finest executions of the sort that I've used in recent memory. I genuinely think it's a great reflection of the talent of the creator:


Disclaimer: I use the site

Libbum 2 days ago 0 replies      
I'll throw two of mine into the mix as well.

Blog: https://axiomatic.neophilus.netPhotoblog: https://odyssey.neophilus.net

Particularly happy about the way the photoblog turned out. I think the interactivity of the globe, showing you where photos come from give it an immersive touch that isn't in your face.

thegranderson 1 day ago 0 replies      
I've always enjoyed this one: http://www.jcchhim.com/route/

It is for a visual designer, so obviously the presentation of that work is different than academic/technical research, but it is very clean and simple.

Apparently he is re-doing his portfolio as the main site is just a giant tweet.

tlackemann 1 day ago 0 replies      
Blogging is a great way to show off what you know and how you apply it, if you're open to that sort of thing.

I'll humbly say that I'm by no means an academic, but I try to showcase what I know front and center and and let the rest be unraveled by those that are interested on my personal site - https://lacke.mn

kbhat 2 days ago 1 reply      
http://kbhat.rocks is my landing page. Rather than dump all my info on this page, it links to my blog and other things I'd like to share.

I got this up after getting my job offer in place, but for now I'm happy with it. One thing that's missing is my resume, but for me that's application-specific and I'd rather have people ask for it than display a fixed version.

Feel free to critique, HN!

benharrison 2 days ago 0 replies      
Here are a couple of my favorites:

http://okaysamurai.com/portfolio/okaydave2006.html - It was built in Flash over 10 years ago, but the skill and creativity behind it is a force that is absolutely still relevant today.


GregBuchholz 2 days ago 0 replies      
I suppose opinions differ, but I like things where content is king, and these are excellent:




makmanalp 2 days ago 0 replies      
On the more technical side, some that blow my mind:

Windytan: http://www.windytan.com/DJ Bernstein: https://cr.yp.to/djb.htmlFabrice Bellard: http://bellard.org/

arethuza 2 days ago 0 replies      
This one isn't about the website (which is basic in the extreme) but the work that is documented on the website - which is a collection of absolutely stunning precision engineering projects:


[NB Along with things like the restoration of Navigation and Bombing Computers from UK strategic bombers!].

alphydan 2 days ago 0 replies      
simple, hand coded, kind-of responsive, http://www.alvarofeito.com
jimjimjim 1 day ago 0 replies      
Anything that isn't bootstrap, full-screen image or scroll-jack paging is great.
mholt 2 days ago 0 replies      
http://sub.blue/ is an amazing gallery of unique fractal art.
traviswingo 2 days ago 0 replies      
http://traviswingo.com is my personal site.

I built an interactive unix-based terminal to navigate my projects and resume. I'm planning on adding a better layout though since it's been pointed out to me that the people actually looking at my site to hire me won't know what to do with a terminal :p.

ponderingHplus 2 days ago 0 replies      
I'll throw mine into the mix. Not sure about employers thinking "I need to hire this person", but for me, my personalized dashboard is a nice way to monitor things I'm working on and reflecting on things I've learned.


chuckdries 2 days ago 1 reply      
Since people are posting theirs, here's mine: http://chuckdries.rocks

My issue is that I don't have a very impressive resume yet (though I should probably link a PDF of my current resume anyway), so I decided to keep it simple and lightweight but also stylish because I bill myself as the intersection of tech and design.

gregw134 2 days ago 1 reply      
Graph of world history: http://histography.io/
juokaz 1 day ago 0 replies      

Mine has switchable backgrounds ("Don't like the speaker look? Go with serious, punk, scottish or racing driver."). Many people have commented about this when meeting in person.

wanda 2 days ago 0 replies      

Recently redesigned. It used to be like this:


(Yes, I know, the new version is not as user friendly, it's not finished yet).

valiafetisov 1 day ago 0 replies      
I made a simple one in a style of unsent email:https://valiafetisov.com

Would be glad to hear any feedback!

tittietime 2 days ago 2 replies      
How about http://www.tittietime.com/

Yes its a tad salicious, but its an interesting technical project.

I have a rather large email list that would be quite expensive to send to with MailChimp, Sendgrid or the like. I've been able to use Amazon SES to send large blasts, daily for next to nothing.

Edit: This is NSFW

arximboldi 1 day ago 0 replies      
More self-promotion: https://sinusoid.es/

Built using ClojureScript. Ethernal WIP.https://github.com/arximboldi/sinusoides

ossmaster 2 days ago 0 replies      
This one is pretty awesome. http://jakealbaugh.com/
echelon 2 days ago 0 replies      
I have a simple website for my Donald Trump text to speech server (written in Rust):


And a simple webpage for my work on laser projector video games:


My laser projector work has gotten me hired at a few places. :)

retube 2 days ago 1 reply      
I like mine :) Simple and speedy (hopefully)


fludlight 2 days ago 0 replies      
There was a personal site by a guy named Rademacher (sp?) that had apartments on craigslist in San Francisco overlayed on google maps. IIRC, it was a solution to a pet peeve that became really popular. He later formed a company with some other GIS-in-the-browser people that quickly got acquhired by some big tech corp.
perryh2 1 day ago 0 replies      
Jeremy Kun's blog, Math Programming: https://jeremykun.com/

He is _super_ smart and his posts often sneak into the homepage here.

jplahn 2 days ago 1 reply      

When I first saw this site I was blown away. Sure, the level of detail may be off putting to some people, but even from a purely engineering standpoint it's impressive.

Shoutout to Anand for the incredible work.

chaosmail 2 days ago 0 replies      
I ported Caffe models to JavaScript in my free time http://chaosmail.github.io/projects/. however, since I know about Keras.js and it's GPU support, it doesn't seem that fancy anymore.
pmlnr 1 day ago 0 replies      

And it was open source before it was cool.

uptown 2 days ago 4 replies      
I like Drew Wilson's:


hkon 1 day ago 0 replies      
I like this one.https://www.igvita.com/
ovis 1 day ago 0 replies      
My favorite would be https://www.remotepixel.ca, which is both beautiful and full of high quality and useful work.
rileyt 2 days ago 0 replies      
Does https://standardresume.co/ meet your needs? It might be a little bit closer to a resume than a website, but it could easily be combined with a more personal single page website.
pfd1986 2 days ago 0 replies      
A bit embarrassed about mine but I'd welcome feedback:


More a researcher type of site but it also showcases the work I've done, so perhaps it's useful.

bhuvShan 2 days ago 0 replies      
Check out http://bhuvaneshshan.me/

Simple UI so that content is the king!Just 4 main pages but also organizes content in a way a user would like to see!

kintamanimatt 2 days ago 0 replies      
One of my favorites is Alex MacCaw's site. It's cleanly designed and communicates his achievements clearly.


DungFu 1 day ago 0 replies      
I wanted to do something for my website that was 100% CSS but looked like WebGL.


Turned out pretty cool.

limedaring 1 day ago 0 replies      
I'm biased (this is my husband's website) but I like the conciseness of https://shazow.net/ a lot.
WhitneyLand 2 days ago 0 replies      
You can create a short video with highlights of your work, people seem to digest that easily:


loeber 1 day ago 1 reply      
Shameless plug for my own: http://www.johnloeber.com. I designed it for maximal clarity and readability.
mrcabada 2 days ago 0 replies      
I'll share mine: http://cabada.mx

It's a grid of all the "cool" personal projects I've made since I started coding.

nsrivast 1 day ago 0 replies      
A plug for my own! http://nikhilsrivastava.com/

Would love any comments/critiques!

pc86 2 days ago 0 replies      
It's interesting to see how many of the sites (those that are being presented by other than the owners, anyway) are getting crushed by the spike of traffic from HN.
anacleto 1 day ago 0 replies      
thirdreplicator 1 day ago 0 replies      
Facebook was once a personal project. I would definitely like to hire that person.
vblord 2 days ago 0 replies      
You may want to consider starting a technical blog. As long as you are okay with doing some work to get some good content on there. I would suggest finding a niche that you like and create an entire blog about it. If you put it right on your resume, they will see you as an expert in the topic. I have a blog just on the topic of SQL Server. Potential employers that use that technology always seem to see that as a good sign that I understand the technology. Furthermore, if you do a technical blog... you are learning more about the topic... which is an added benefit.
metachris 2 days ago 0 replies      
Remzi H. Arpaci-Dusseau: http://pages.cs.wisc.edu/~remzi/
webjames 2 days ago 1 reply      
I just made my own, responsive design based on the bootstrap framework.


georgehenryrowe 2 days ago 0 replies      
This musical toy splash page from me http://georgehenryrowe.co.uk/
billandersen 2 days ago 0 replies      
10 years, 10 provinces, 1 photographer. Ice Fishing Huts in Canada. http://icehuts.ca
lawrencewu 2 days ago 1 reply      
Here's mine too, I guess: http://lawrencewu.me/

Would love some honest feedback on it!

Jaruzel 2 days ago 1 reply      
I really dislike mine. Don't use it. I am not a web designer.


bahmutov 2 days ago 0 replies      
warning: posting my own website https://glebbahmutov.com/

Has links to blog / slides / github and list of GitHub projects with search. Allows people and myself to quickly find something. Getting recruiters' pitches (and occasional hand crafted emails to join teams) every day.

skraelingjar 1 day ago 0 replies      
momciloo 1 day ago 0 replies      
Inspired by brutalism, I made my website: www.momcilo.xyz
rayalez 2 days ago 0 replies      
I really like my own, so I'll post it here:


robocaptain 2 days ago 0 replies      
rafaqueque 2 days ago 0 replies      
Mine is quite different: http://rafael.pt
reactor 2 days ago 0 replies      
Brajeshwar 1 day ago 0 replies      
No employer is going to take a hiring decision by looking at your personal website.

You know, I've dealt with many clients who ask for flying text, moving pictures and looping videos in their websites. Don't be that client to yourself. When we work with such clients, we usually start probing with lots of WHYs, and the other "W" questions, something in the lines of

- "Why, according to you, do you believe that is the best way of displaying the information?"

- "Why do you believe that all the 5 points are equally important?"

- "Who are your most ideal users?"

etc, etc, etc. We kept probing till it comes down to the simplest, bare-bone answers, at best -- YES or NO. For instance, "YES, the user will need to provide just the email ID and nothing else."

Now, apply that to your own personal website, get down to the simplest core of your personality/quality/characteristics/qualification. Better yet, think of your target industry and come up with a compelling, different take on it and make it interesting for your prospective employer.

One of the biggest mistakes most "providers" make, is talking about themselves, as that is the easiest. Instead, talk of the recipient, be it the employer, the client or the user. They talk of themselves since they everything about themselves more than anyone else, so they stay in that comfort zone. Go, venture to your prospects, focus on them and not you.

Do that, and they will be the one to come to you and "ask you for more." When they start asking for more, the journey forward is easy - now unfold your story, build it up, surprise them. Go on.

The narcissism part:

Personally, I've had people surprised, smiled, and intrigued at conferences, events with my business card[1, 2] and they usually go to my website[3].

1. Front - https://dl.dropboxusercontent.com/u/1308/photos/business-car...

2. Back - https://dl.dropboxusercontent.com/u/1308/photos/business-car...

3. https://brajeshwar.me/

mdni007 2 days ago 0 replies      
Awk34 1 day ago 0 replies      
I think my personal one came out pretty well :D


apconan 2 days ago 0 replies      
oh my god these are so ugly lmao, engineers are really not designers...
uzyn 1 day ago 1 reply      
http://dbbd.sg a personal fav of mine, utilizes design for better content presentation and organization.
milge 2 days ago 0 replies      
I dig mine: http://milge.com

It's all client side. Runs on JSON, JS, HTML and CSS. Super cheap to host. I'm mainly documenting my journey into metal fabrication as a programmer.

tictacttoe 1 day ago 0 replies      
Coworker. (jbernhard.xyz)[jbernhard.xyz]
fatboy10174 2 days ago 1 reply      
Im also one of 'those' people, i like my own.. https://www.filmitright.co.uk/
matttheatheist 2 days ago 0 replies      
I like the simplicity of www.enrad.io
suhaas_s 1 day ago 0 replies      
Stack over
joshkpeterson 2 days ago 1 reply      
Ask HN: What do you do when a competitor offers their service for free?
7 points by nicholas73  4 hours ago   10 comments top 5
benologist 4 hours ago 1 reply      
You're not competing with that other person, you're competing with nobody knowing you exist and nobody caring you exist.

All the people who know both products exist .... is probably just you.

If your company fails it'll definitely be because of what you did, not what they do.

If your company succeeds it'll - almost - definitely have nothing to do with anything the other company did.

jv22222 3 hours ago 1 reply      
There are a lot of products where free and premium competitors exist.

Perhaps the best advice is from Michelle Obama: "When they go low, we go high"

Consider aiming for high end users in your market, then you need far fewer customers to generate a decent wage.

For example if you charge 49 vs 9 then you need 5 x less costomers to hit your paycheck.

Just be sure to validate with real customers that the market can bear the price point you need.

bdcravens 1 hour ago 0 replies      
Our competitors aren't free, but often significantly undercut our prices. (it's a performance based product) Our response are our values adds and our narrative.
wayn3 1 hour ago 0 replies      
When they go low, you go high.

Outcompete them on quality. Pretty simple. And don't forget that you don't compete with each other. You compete with being considered irrelevant.

Mz 2 hours ago 0 replies      
It is not at all uncommon for the people who want it to be free to be high maintenance users who bleed your company for product support. Having more customers does not always translate to more income.

The message you need to worry about is almost certainly not "Why you should spend money on my product instead of getting theirs for free." The message you need to focus on is why people should want your product at all. In fact, before you get to that stage, your message may need to be as simple as "We exist."

This was the marketing goal of Aflac's initial duck commercials. They were a little known insurance company with low name recognition. They tested two commercials. One was a more respectable, conservative commercial. It achieved around 40% name recognition, which was the industry standard and would have been a big improvement. The second achieved 90% name recognition, but was a silly duck making fun of the sound of the name. It was considered hugely risky, but the CEO latched onto the 90% name recognition metric and went with that campaign.

After becoming a household word, they changed their marketing campaign goal to trying to educate people about their product. It was poorly understood as to how it differed from other insurance products. Yet, they were already a Fortune 200 company because everybody at least new their name and that they existed.

Cart and horse and all that.

Ask HN: Is Dell XPS Developer Edition a Good Replacement of Macbook Pro?
124 points by kornakiewicz  22 hours ago   93 comments top 41
zeusk 22 hours ago 7 replies      

I've been using a Retina MacBook Pro 13" (early 15) and 15" (mid 15) and just picked up the xps 13 9350 with iris pro.

There are definitely some quality control issues but once you get a working model with no faults (I had one that wouldn't reboot and had terrible coil whine, one that had loose trackpad and yellow tint on screen but this could also be because of Amazon's shitty packaging where the laptop was in a box with only some brown paper crumpled in) - atleast they took them back no questions asked. I'm amazed how far windows laptops have come along.

The only real downsides are that it power throttles (and thermal too, but I placed my own aftermarket thermal paste and it doesn't cross 66 C on full load now) due to the iris GPU itself consuming 18W at it's rated turbo boost with the SoC's TDP being 15W (long turbo) and 25W (short turbo). Perhaps go with the i5 model that has the HD 520 or the new 9360 that has kabylake with better thermal and power consumption (HD 620 is roughly similar to HD 540 but won't throttle). You can also use Intel's XTU to undervolt and better battery life and throttling if you're going to use windows.

Linux runs flawlessly, infact so does OS X if you can replace the wifi card. AMA

wolfkabal 22 hours ago 2 replies      
I went with a ThinkPad P50. It's not nearly as bulky as some think. I specked mine with the Xeon processor, and 1080p screen (but 4k is an option). Also specked everything else as low as possible (HDD/SSD, RAM). I upgraded these items myself after. I now have a server grade processor, have put two 512 SSD in it (one M.2 NVMe), and 64GB of RAM. It's a beast. I can also swap out the LCD panel directly for the 4k panel if I so choose with an after-market one later if I so choose. Initial base price was only around $1400 (was on sale), and about $500 for the SSD/RAM on my own dime (would have been well above $1000 on lenovo's site).

So for ~$1900 I have something that blows the MacBook Pro out of the water.

pbohun 22 hours ago 1 reply      
One gem I found when I was shopping for a laptop is the Dell Inspiron 7559 (part of their "gaming" series). I bought the most expensive $1300 version last winter and it's been great.

- 4k touchscreen

- i7 Skylake processor w/ identical stats to that on the $2400 15" macbook pro

- 16 GB RAM

- 128 GB SSD + 1 TB HDD (I replaced the HDD with a 500 GB SSD from Amazon)


It's sturdily made, I take it everywhere. The only thing I miss from my mac is the trackpad. You can't beat mac trackpads. However, the trackpad on the Inspiron is great, much better than many of the others I've tried. When you take into account it has better graphics acceleration than the $2800 macbook pro, you find that dollar for dollar, it's one of the best value laptops out there. (Seriously, compare it to even Dell's XPS 15, you'd have to pay ~$1650 for an XPS 15 to get comparable specs to the $1300 Inspiron 7559. The Inspiron even has double the graphics card RAM of the $2550 XPS 15!)

dolguldur 10 hours ago 0 replies      
No. I had the Dell XPS 15 9550 and there were several issues.

Trackpad much worse than on a Mac

Coil whine

Bad fan control means it was sometimes noisy in near-idle contitions (though in idle it was very silent)

there were some flicker issues with the GPU (might have been resolved though)

one key was bouncy, meaning it sometimes triggered twice

it woke up from sleep randomly, sometimes while in my bag, often completely emptying the battery

In the beginning it also crashed very often, however this was resolved with an update.

So all in all the quality wasn't on the level of a Mac.

And I wouldn't even start speaking about the OS.If you're used to macOS, it's still such a day and night difference.

Connecting a normal low dpi display to the 9550 with HIDPI display lead to so many annoyances with Windows and all the programs that won't support this for the years to come. I'd barely consider it useful. Although the display itself was quite nice.

086421357909764 22 hours ago 3 replies      
14" Razer Blade 1060, grab a dbrand matte skin to cover the hideous Razer logo. No problems with Ubuntu 16.10 currently installed. Also have a 13" Dell XPS dev edition used for specific work. It's a nice system as well. The Razer def has more power if you want a full replacement.
oxymoron 22 hours ago 1 reply      
I carried a 2013 Dell XPS Developer Edition and a MacBook Air in parallell for a while this year. Note that not all of this necessarily applies to more recent versions of the XPS.

* My XPS has a really awful touchpad. When I first got it, it was definitely my main reservation. I tried a 2014 model and noted that it wasn't much improved.

 * The battery life is much, much worse on the XPS, which is probably the main reason why I find myself reaching for the mac. I've kept Ubuntu 12.04 on it, so Linux power management has likely gotten better but there's still no comparison. * other than that, I've loved my XPS. It's super light, has a brilliant keyboard, excellent specs and still works well after three years.

t0mas88 22 hours ago 1 reply      
I have had a few models of the XPS 13 now and each one seems to get better and better. They're both light enough to carry around and they are still quite strong, I have seen a lot of them dropped without any damage.

Initially I though I would never use the touch-screen, but it is actually quite useful when reading things (scrolling) or quickly clicking basic things when not really sitting behind the keyboard on a desk. Same for the light in the keyboard, very useful when working at night and on airplanes etc. The screen in general is really really good, some colleagues have the 1920x1080 screen, I would pick the 3200x1800 screen again next time since it's much nicer to read from and allows you to use smaller fonts (= more code on one screen)

Linux support is generally much better than other relatively new notebooks I've had, but still sometimes things break. The Developer Edition is released a bit later than the Windows models, probably to stabilize Linux support. I've only used it with Ubuntu, but I see others use several other distros which seems to work without much issues.

revicon 4 hours ago 0 replies      
Question for the iOS developers on the thread thinking about switching (or have already switched) away from macs as you dev machine. How do you plan on continuing to do iPhone/iWatch/iPad dev given apple's requirement to use their hardware?
kminehart 22 hours ago 1 reply      
My girlfriend recently bought one for her daily driver. We decided to go with Arch Linux to gain access to packages as they release, rather than wait for the next iteration of Ubuntu or Fedora to get updates.

Here are my pros and cons:


1. The hardware is great; the developer edition favors more Linux-compatible hardware (obviously), and for us, it didn't require very much setup. Usually the default configuration will be enough. The touchpad, like the MacBook, has a glass surface and feels excellent.

2. Like the MacBook, it's very light. The screen looks great, and honestly on Linux I prefer 1080p.

3. Dell has a very reasonable warranty, and is very quick to respond. Example: You can install whatever Linux distribution you like, replace the SSD (so long as you don't ruin anything while you're there, of course).


1. It's fragile. Unlike the Macbook, you have to be at least (more) careful with this thing. We ended up breaking the screen without much effort; I wager it was the fact that it was in a backpack that got dropped somewhat aggressively.

That being said, we also bought the $60 accident protection, and Dell sent out a technician from a local repair shop to fix it for us within that week. If the technician can't fix it, they will over-night you a shipping box and a FedEx label to send your laptop back in.

Just be careful with it; treat it like the $1000+ machine that it is.

2. No replacing the RAM. It's soldered onto the board. That's not a problem for me because I barely push ~4GB.

Conclusion: I use a MacBook now; my XPS 13 is actually coming in tomorrow and I'm very excited. I think it's a great machine and a great MacBook replacement, and has excellent Linux compatibility. Dell's customer support is great, just be careful with it; it's not an aluminum body or several layers of glass in front of the screen. Make sure to buy the one with the right amount of RAM so you don't regret it later. If you're worried about storage, there's a $150 500GB M.2 SSD on Amazon, buy the lowest storage version and upgrade it. Get the protection plan. It's cheap compared to the cost of buying a new device.

sbrother 22 hours ago 1 reply      
I have a new XPS 13. It's impeccably built, you can use it comfortably on an airplane, and it runs Linux with no issues. But I wouldn't use it for daily development. The 13 inch screen just doesn't have enough real estate, and it often feels like it's struggling to drive the 4k screen whenever I try to switch applications.

If you don't mind something heavy, check out the new Thinkpad P50 or P70. They have actual desktop-level performance, terrific screens (matte, color corrected 4k IPS!) and the new NVMe SSDs. I do most of my daily development on a P70, and increasingly just lug it along when I travel even though travel was the reason I bought the XPS 13.

mkroman 22 hours ago 1 reply      
The XPS 13 was recently upgraded to Kaby Lake, so if you're fine with the smaller display, I'd say go for it, I've heard great things.

Also, do realize that the UltraSharp model will have a significant impact on battery life. The comments I've looked at for the XPS 15 9550 (4K display) say that the battery life is basically halved, but it's supposedly still around 4.5 hours of battery life.

If you prefer the 15-inch, you might want to wait for a while - they still only feature Skylake CPUs and I think an upgrade is imminent (given the recent XPS 13 upgrade and all.)

I don't have any personal experience with the machines, but I'm planning to buy the XPS 15 once it gets an upgrade.

manav 22 hours ago 2 replies      
Consider the outgoing Macbook Pros. You can probably get a good deal on one.
pyrophane 22 hours ago 0 replies      
I personally prefer the XPS 15 for the quad-core CPU and discrete graphics, but it looks like getting it to play well with linux could take some work, and there might still be some issues: https://ubuntuforums.org/showthread.php?t=2317843.

Out of curiosity, what has you disappointed with Apple's new laptops?

mirekrusin 20 hours ago 1 reply      
I'd love to see some real competition with macbooks but I haven't seen anything close yet... Alternatives do exist but they are still very expensive... I mean really, they are bloody expensive. When I'm thinking about putting this kind of money on the table, I just go to apple store, no?

Why on earth there's no startup which just puts together linux laptops? I'm sure you can grab Chinese/Taiwanese/Korean whitelabelish product customised with linux friendly peripherals or just put the box together yourself with engraved penguins here and there. Half of devs would love it, another half would hate it - but that should be enough to survive, no?

dhruvtv 21 hours ago 1 reply      
Quite interesting that no one has mentioned the Microsoft Surface Book here. Anybody has any thoughts on it?
bnewton 21 hours ago 1 reply      
Unfortunately XPS Developer Edition does not support external 4k displays @ 60Mhz like Dell's own P2715Q. If that kind of thing matters to you.

Otherwise I think it a great machine.

piptastic 21 hours ago 0 replies      
I had a laptop from System76 at my previous job, which runs Ubuntu: https://system76.com/laptops

I liked it, but I didn't travel with it so not sure how carry-able it is. Current shop is Mac oriented but I would have gotten another one if it had been up to me.

sliken 19 hours ago 0 replies      
Be warned that the current XPS 13 is kaby lake and has a rather slow (non-IRIS) gpu. 3200x1800 is quite a few pixels and the built in GPU is pretty weak.

Might want to consider the skylake version, sure it's the previous generation, but the CPU perf is pretty similar, and the Iris 540 is a significant GPU upgrade. Not a nvidia/ati killer by any means, but much better than the normal intel integrated graphics.

Either that or way for similar to ship in it's kaby lake incarnation.

Also keep in mind that the "upgraded" 3200x1800 screen about halves the battery life and is reflective. Not really worth it for me (at least in a 13" screen).

Sadly you can't get more ram or an i7 with the 1080P (they called it FHD) screen.

ceor4 22 hours ago 0 replies      
Same boat here, although I'm a bit worried about the downsize from 15" to 13". Perhaps with a docking station, it might not be so bad. But hopefully dell jumps on this opportunity to make a 15" developer edition
phjesusthatguy3 19 hours ago 1 reply      
I don't know about the developer edition specifically, but I just had a XPS13 (with a skylake processor, so not what's available on the store right now) with stock Windows 10 pro on my desk, and debian stable installed just fine except for the wireless card (which is the only network interface on the machine). It wasn't mine to play with so I didn't try to figure that out but whatever version of KDE that gets installed with Debian 8.6(?) seems to be 99% of the way there.
oduis 12 hours ago 0 replies      
I got a Dell XPS 15, the 9550 edition.Before purchasing I was scared of the bad stability reviews it had when it was release. However Dell treats it with updated drivers regularly, and with latest drivers it works great. It can even handle 3D shooter without thermal throtteling etc.I use it as a developer machine with Windows 10.

Just be careful with the Dell Thunderbold 3 TB15 dock (not sold any more I think). I got one, and with the latest drivers it works, but has some quirks.Also be careful to sort out complaints about the XPS in the net: may have problems using the dock, not with the laptop itself.

And the touchpad is great by the way.

papaf 21 hours ago 0 replies      
I recently got a Dell Latitude 12 7000 Series for $work and I was surprised by how good it is:

- Plays 4k video under Windows 10

- Runs Arch linux without any hardware compatibility problems

- Silent, portable, fast (pick all three)

It sounds like an advert but this was a machine I didn't pick myself and it is the best computer I have ever used. The next time I spend money on my own laptop I will move from Thinkpad to Dell. This is after using Linux on Thinkpads for the last 13 years or so.

I thought this was worth mentioning as the Latitude is probably a bit cheaper than the XPS.

slavik81 22 hours ago 0 replies      
I'm on my fourth motherboard for a year-old Dell XPS 13. They've released a new model since then, but the experience was pretty awful. Each failure is hours down the drain dealing with tech support and a hard drive wipe. The overall experience of using it as your primary computer is made painful by the inability to depend on it working.

The warranty just ended, so unless they finally fixed it for good, the machine may have been a waste of a thousand dollars. I'm crossing my fingers and hoping it keeps working.

eadz 22 hours ago 2 replies      
In a similar boat. The closest machine to the Macbook Pro is the razer blade stealth.


It's basically a rip-off of the (2015) macbook machined aluminium body design. It has the 7th gen processors rather than than the 6th of the new macbook, and a similar price.

Not sure about linux support, from what I've read there may be an issue with the webcam.

davb 21 hours ago 1 reply      
I had the first gen XPS 13 and while it was a beautiful machine it ran extremely hot at time. So much so that I couldn't use it while on my lap. I'm not sure if the deciding has changed much since then but it's worth taking into consideration.

I ultimately went with a retina MBP (early 2015). My next laptop is likely to be either a Lenovo T460 or a Dell P50 (or their successors).

gerbal 22 hours ago 0 replies      
XPS 13 is well worth it. Its only downside is the webcam looking up your nose. It's lighter than a macbook pro and is about as sturdy.
crbelaus 22 hours ago 0 replies      
I have one for the work. It is absolutely wonderful.I am currently using Ubuntu 16.04.1, and I feel it lightweight and performant. The battery lasts about 9 and a half hours (doing web browsing and light programming).

I suppose that the thing will only improve with future Ubuntu Hardware Enablement Stacks that include new kernels and so...

criddell 21 hours ago 0 replies      
The nice thing about an OSX machine is that it (legally) runs more software than any other operating system.

It sounds like the software you need is available on all three operating systems, so the Dell machine is a fine choice.

I'm assuming that the movies you want to watch are rips or Netflix and not something like UltraViolet streams.

Kalium 21 hours ago 0 replies      
I've got a Dell Precision 5510 with Ubuntu. I've been very happy with it. My only major grievance was the slightly slow graphics drivers, but it's not like I'm gaming on the thing.

I got some very good - and upgradable - hardware at a good price with an extended battery. Good call, would buy again.

davidw 21 hours ago 0 replies      
I have one, and love it, but I have used Linux for the past 20 years and am not about to switch any time soon.
vasilakisfil 21 hours ago 0 replies      
I have xps 9550 FHD with 512GB SSD and 16GB RAM. I installed Ubuntu gnome 16.10. Everything worked out if the box. I even played steam games on Linux (like firewatch). I get around 6 hours of Rails and Ember development.

I think it's really good machine.

koenigdavidmj 22 hours ago 1 reply      
Looks like they come with Ubuntu...is that bog-standard Ubuntu, or does it have custom drivers for things like the touch screen? (Basically, I would be curious whether it's easily replaced by another distribution.)
pepperpo 22 hours ago 0 replies      
It is a beautiful machine but I want to voice my experience having tried on the XPS 13 for size:


Granted I owned the older 9343 model but despite the many BIOS updates (and several Linux distros) my laptop kept up phantom right clicks and cursor jumps - very annoying! No issue with Windows 10 though.

I sold it onward and happy with the real-estate 15" provides me once more.

TYPE_FASTER 20 hours ago 0 replies      
The quality control concerns in the comments mirror my experiences. I would not buy one. I would still rather get the new MBP with function keys vs. the Dell XPS Developer Edition.
alphabettsy 22 hours ago 1 reply      
Sounds like everyone below is saying the XPS is great, with exceptions of the battery life, build quality, trackpad, and webcam. So you're probably better off buying the now last gen MBP.
CyanLite2 19 hours ago 3 replies      
Best developer laptop is a Dell Precision 5510. Up to 32GB ram, thinner and lighter than a Macbook, SSD that does >1.5GB/sec, and has a docking station.
ifhs 22 hours ago 1 reply      
I recommend carbon 3rd gen
kag0 21 hours ago 0 replies      
Linux users on the xps13/15, with synaptic you typically can't rest your thumb in the corner of a touchpad while using it. Do you have this issue or any work arounds?
hihihoho 22 hours ago 1 reply      
Thinkpad X1
caleblloyd 21 hours ago 0 replies      
I have been using an XPS 13 9350 for around 6 months now, coming from an 13" 2015 MacBook Pro. I picked up a basic FHD core i5 model with 8GB of RAM on sale, replaced the WiFi chip with an Intel 8260NGW and replaced the 128GB SSD with a 256GB Samsung 950 Pro NVMe. All said and done, I spent less than $1,000.

Ubuntu 16.04: Pretty much works flawlessly as long as you have Intel WiFi- I had some issues with a flashing screen at first but they all seem to have been resolved using `apt-get upgrade`. Suspend/resume, audio controls, and brightness controls all work fine. I run docker images for pretty much everything and it's great to have native docker without a VM involved.

Physical Characteristics: It is very light and easy to use on the lap, on the couch, or in bed. It feels more like a MacBook Air than a MacBook Pro. Fans are on the bottom but they don't really spin up that much, even when I don't have anything under it.

Keyboard and Touchpad: Keyboard is fine. Touchpad is a lot smaller and more "clicky" than a MacBook Pro. The force touch on the MacBook Pro is way better (it's pretty much the gold standard of touchpads).

Screen: I have the FHD screen because I don't care about touch, and it is Matte (the QHD+ touchscreen is glossy). DPI scaling in Ubuntu 16.04 is hit or miss. In my experience, some apps, like Chrome, only respect DPI Scaling if it's in multiples of 0.5 Other apps, like Firefox only respect DPI scaling if it's an even number. JetBrains products do a good job of respecting DPI scaling though. I keep it at 1x DPI scaling, so everything looks pretty small at 1920x1080. If you go with the QHD+ touchscreen, native resolution is 3200x1800 so 2x DPI scaling will be an effective resolution of 1600x900, and it will look great. I think most apps should work fine at 2x DPI scaling.

Webcam: The webcam location really is stupid. I dislike video chatting on this computer so much I'd rather use my phone. I use Android and kind of miss iMessage and FaceTime from the mac (it's how I would talk to some Apple friends), but whatever.

Other Thoughts: Linux FTW. IMO, the last good release of OS X was 10.6.8. Everything after that either changed the scrolling direction or added some sort of bloat to the OS. I'd run 10.6.8 still if I could. Ubuntu 16.04 feels like getting your life back. It's super quick, you can use apt-get to install dev tools instead of hacking around with homebrew, you get the real version of `sed`, and you don't feel like Apple controls your life anymore. Gotta say it twice- native Docker support and no messing around with VMs anymore!

Take the leap of faith and get the XPS 13. Or a Lenovo with good linux support. Part of me wants to try out the big ass trackpad on the new MacBook Pro but none of me wants to go back to paying $2k every time I want to upgrade my laptop.

synthecypher 22 hours ago 0 replies      
Does it run macOS? No? In which case no its not a good replacement for a MacBook Pro.
Ask HN: What is your goto resource for learning about big data, ML, AI etc?
135 points by vijayr  1 day ago   36 comments top 24
curiousgal 1 day ago 6 replies      
HN has a great and I mean absolutely great search feature via Algolia https://hn.algolia.com and this particular question keeps springing up every now and then, no one seems to use the feature despite the search bar being at the bottom of every page.

Edit: removed "inb4 downvotes".

dhawalhs 1 day ago 1 reply      
For complete newbies (but with programming experience), I would recommend this UW Coursera course to get introduced to ML Basics:https://www.coursera.org/learn/ml-foundations

Early this year Apple acquired Turi for $200 million. It was founded by Carlos Guestrin, one of the professors who is teaching the course.

We (Class Central) are also working on a six part Wirecutter style guide to learning Data Science online. Here is part 1:https://www.class-central.com/report/best-programming-course...

Feedback would be appreciated (on the format as well as content)!

geebee 23 hours ago 0 replies      
It depends on your focus, of course. Andrew Ng's coursera is famous, and it's ideal for someone who wants to get into the mathematics behind various ML algorithms. However, this class is will take you into implementing algorithms, but is less about applying them.

If you want to just try them out, I'd honestly recommend just going through the scikit-learn documentation. Almost all of the algorithms provide an example, and the API is pretty consistent across different ML algorithms, to the extent that it can be.

People learn differently, some people prefer to get into the math right away, others will never be interested in it. I'm interested, but I tend to be more motivated when I've used the algorithms, start to learn about how and why they perform well or poorly under various circumstances, and then dig into the mathematics specifically to find out why.

Also, I'm not going to be creating new ML algorithms. So, you know, that also influences my level of interest. I do care about the mathematics involved, because I do want to genuinely understand why some outputs are available for random forests but not naive bases or logistic regression, why performance and/or accuracy is great in some circumstances and not others, and I don't want to have to rely on too much hand waving. But if you want to actually develop and research novel ML algorithms, you'd need to get considerably deeper into the math.

jotto 1 day ago 0 replies      
similar question was just asked 2 weeks ago:

 Ask HN: How to get started with machine learning?

k26dr 1 day ago 0 replies      
The scikit-learn documentation is solid:


smnplk 4 hours ago 0 replies      
I know you didn't ask for this, but here is a gentle introduction to ML http://www.soc.napier.ac.uk/course-notes/sml/manual.html :P
sremani 1 day ago 0 replies      
Udacity has a free Introduction to Machine Learning (which use scikit-learn, python). They also have nano-degrees which are paid.
BrandonBradley 1 day ago 0 replies      
For big data, 'Big Data' by Nathan Marz was an excellent read. The conceptual chapters are top notch, and the implementation chapters give you a good look into the tools used for the field at the time of publishing.
dharma1 1 day ago 0 replies      
There are a lot of good online courses to get started, I like the Stanford CS231n lectures - http://www.youtube.com/watch?v=F-g0-6_RRUA&list=PLLvH2FwAQhn...

For keeping up with the latest research, once you know what you are doing, reading papers on Arxiv daily/weekly is a great way to keep up, nearly everything gets published there

crystalPalace 1 day ago 0 replies      
I enjoy the way this site is written and its focus on getting developers up and running quickly while still instilling conceptual basics.



glamp 1 day ago 0 replies      
http://blog.yhat.com/: Tutorials, example apps, and other stuff.
eliben 1 day ago 0 replies      
I think it's time for someone to write the equivalent of http://norvig.com/21-days.html for ML/big data :-)
nborwankar 1 day ago 1 reply      
Shameless plug: LearnDataScience http://learned.com is a git repo with Jupyter Notebooks, data and instructions. It's meant for programmers, assumes no math background and addresses data cleaning issues which most classes ignore. Having said that Andrew Ng's class on Coursera is gold.
imrank1 1 day ago 0 replies      
For a ML intro Coursera's machine learning course https://www.coursera.org/learn/machine-learning is great. I have not been through the entire course but for someone who has no background in it, its a good intro as the video themselves are solid.
raju_bala 1 day ago 0 replies      
Conferences like WWW, KDD, ICML for latest, coursera for basics, and textbooks like Pattern matching by Bishop.
kobeya 22 hours ago 0 replies      
Ignore the domain but... try this:


It is a remarkably high signal to noise community.

ivan_ah 21 hours ago 0 replies      
METACADEMY is pretty good: short summaries + prerequisite graph


enthdegree 1 day ago 0 replies      
A classic reference is Pattern Recognition and Machine Learning by Bishop
Drdrdrq 23 hours ago 0 replies      

Excellent book for starting with NN and DL.

nonbel 23 hours ago 0 replies      
The best way to learn is by doing, imo. Just go join a kaggle competition. Maybe people know others it is so easy to partake in?
snambi 1 day ago 0 replies      
Nice. I was looking for ML resources.
Ask HN: What laptop should I get instead of a Macbook Pro?
83 points by qntty  1 day ago   100 comments top 39
skizm 1 day ago 1 reply      
I mean, not for nothing, but you do know you can still buy the old style MBP with 2x usb3 and an hdmi port, right? You don't have to get the new style ones that they announced.

That said, I hear you. I wanted a 32gb model with crazy good battery life also, but to be honest, Windows laptops are kind of all shit right now. I'm in the exact same boat as you. I hate the new MBPs and need a new laptop soon, BUT I'm still landing on the old style MBP as the way forward every time I look through the available options.

Probably not much help, but that's my 2 cents.

e: that said I am going to keep refreshing this thread and hope someone mentions something I haven't looked at yet.

mdasen 1 day ago 1 reply      
As an add-on question: how can one figure out if a laptop supports Precision Touchpad rather than trying to emulate a mouse with the trackpad? Does Precision Touchpad actually make Windows trackpad usable and enjoyable like the Mac ones? Is Precision Touchpad supported by Linux distros?
SamUK96 1 day ago 0 replies      
I assume that if you considered an Apple product, you expect portability, so...

If you want to spend a similar amount of money, get the Asus UX390UA (Zenbook 3).1) It's lighter2) It's got better components in every single aspect -> CPU, GPU, SSD size, Screen, keyboard, etc., etc....3) It's actually cheaperSTILL

If you want to spend less, but now around the same performance of a MBP, maybe get the Asus UX330. It's basically a toned-down UX390, but still awesome.

If you want a cheaper STILL, consider a Clevo reseller like PCSpecialist (UK), Scan (Everywhere?), Sager (US), XMG (Europe). They are the ultimate in performance per cost, it's just that they tend to not be the most asthetically pleasing.

NightlyDev 1 day ago 5 replies      
I'm very happy with my XPS 13, great build quality, great battery life, new hardware, tiny screen borders(resulting in a tiny laptop) and linux support.
berkeleynerd 1 day ago 1 reply      
For those wishing to run Linux, which of laptops require no (or minimal, I suppose) closed source firmware? I tend to prefer Debian sans non-free but I'm practical enough to just weight that as one factor among many.
rayalez 1 day ago 1 reply      
I am extremely happy with my Lenovo ThinkPad X1. It is beautiful, powerful, and is pure joy to use.

Dell XPS 13 is also a very good alternative, I've heard.

WayneBro 1 day ago 4 replies      
Any opinions on why developers on HN/elsewhere seem to prefer laptops over desktop machines?

Do you really need to be coding on the bus/train/plane or in hotels? When you go to a meeting, do you really need to bring your entire development setup with you?

When I go into a client's office for a meeting I usually only need to take notes and do presentations. So I get a cheap $500 laptop for that. If I need anything at all from my home workstation, I just remote into it. Actually, I did this even before I was working for myself - I'd just remote back into my workstation at my desk.

Is it just that you don't want to deal with 2 machines? Are you just doing it because that's what everybody else is doing?

rurban 6 hours ago 1 reply      
I tried the Zenbook for a year, but the GPU didn't listen to sleep/lid close events even after trying several fresh kernels, the Wifi wakeup on linux sucks compared to macos (even with the mDNSresponder desaster), the trackpad was much worse.In the end it burnt/overheated because of the overheated GPU.The casing was also too edgy, I constantly did hurt myself with the right hand.

A fully upgraded MacBook Air is still the best. (i7, 500GB HD, 16GB RAM) I got several of them.

Lenovo is too heavy to carry around. Even a MBP is too heavy and bulky for me.The Elitebook has no 500GB HD available and also only 16GB RAM.

5ersi 1 day ago 0 replies      
We'll the Macbook Pro 2015 is still a decent machine. We should expect to see some discounts as it phases out in the following weeks.
savanaly 1 day ago 1 reply      
In the spirit of "teach a man to fish" I'll plug this handy resource for consumer electronics that I think makes very trustworthy and good recommendations. [1]

And they have an entire article devoted to the topic of laptops. [2]

[1] http://thewirecutter.com/

[2] http://thewirecutter.com/reviews/what-laptop-should-i-buy-th...

manaskarekar 1 day ago 2 replies      
Surprised to see no mention of the excellent Latitude E7450 and E7470 and the Latitude E5450 and E5470.

Run Linux beautifully, if you care about that.

raisedadead 1 day ago 1 reply      
Yeah, windows laptops have always been shit (considering MS never made hardware early on, until recently), MS has done some blunders in past as well (remember Vista and Win8).

But it does learn from its mistake, the new Surface line-up is epic.http://mashable.com/2016/10/27/microsoft-better-apple

I have been using a Windows laptop for over 5 years (Yeah a Lenovo!) and have went thru the whole upgrade from Windows 7 --> Windows 10.1 Anniversary update (for free), and to much shame of mine, my b!@#ch of a laptop still doesn't cry considering a boot up time of 6 seconds!

Yet I needed a dedicated Unix environment and although Bash is available natively now on Windows, it's not going to be stable soon enough for me (6 months from now maybe, Creators Update is coming in Jan' 2017). So, a week ago I did buy the MBP retina 13" Early 2015, and trust me I am not disappointed, after last night's #AppleEvent.

I might be biased but coming down to your query:> Are Lenovos worth considering post-superfish-gate?


"based on my personal experience".

faitswulff 1 day ago 1 reply      
I was hoping there would be more commentary on the Lenovo superfish situation as it stands today. This is exactly my concern with purchasing from them.
vladimir-y 10 hours ago 0 replies      
As for me the only decent laptops on the market are HP Spectre x360 (second generation, recently updated, comes with Kaby Lake) and Acer TravelMate P648. Unfortunately not the Dell XPS laptops due to the widely known coil whine problem and in general a quality control issue.


TurboHaskal 1 day ago 2 replies      
- Dell XPS 13

- Thinkpad x250 (x260 has PWM issues)

- 4th Gen Thinkpad x1 Carbon (FHD model to avoid screen lottery)

- Thinkpad x1 Carbon Yoga (OLED)

- Refurbished 2015 Macbook Pro

synchrone 1 day ago 2 replies      
I am using HP Spectre x360. Really close to MBP 13". Never actually used the tablet mode.Bonus points for hassle-free linux experience.
markbnj 1 day ago 0 replies      
Most of my colleagues on our SRE/devops team have Lenovos and swear by them. I have a System76 and I wish I could recommend it. Great system software packaging, decent mainboard and display, horrible keyboard, touchpad and case quality. I'd go with a Dell or Lenovo for my next one.
numerlo 1 day ago 2 replies      
I would recommend a Surface Book. Even if you don't plan to use it as a tablet at all it still beats every other laptop on the market. Initially it had a lot of issues but now they have been fixed and it really is amazing.
jlebrech 1 day ago 1 reply      
Chromebook and SSH into a REAL computer ;)

on a serious note, look at Aorus X5, I like the RGB keyboard. you can get it to colour the keys based on context. could be a nice alternative to the overpriced touchscreen of the new macbooks.

AdmiralAsshat 1 day ago 0 replies      
You don't mention if Linux support is vital to your search. It would be good to know, since there are plenty of great Windows ultrabooks that are not-so-great if you're planning to load Linux onto them.
NDizzle 1 day ago 3 replies      
Razer has a 14" laptop that looks really nice, if you can look a little past the color scheme.


They also have a 17" and a 12.5" laptop, but you're probably looking for something in between 13 and 15.

I'm in the same market. I have a late 2013 Macbook Pro and there is ZERO chance I'm buying a modern 15" MBP. The Touch Bar is offensive to the point that I'll put up with Windows instead.

baccheion 1 day ago 1 reply      
There are 4 laptops I'd buy right now (if I could):

- Asus ZenBook Pro UX501VW (15.6")

- MacBook Pro 2016 (15.6")

- Dell XPS (13" or 15")

- Lenovo X1 Carbon

If you don't like the MacBook Pro (or think it's too expensive), then I'd go with the ZenBook Pro.

elchief 22 hours ago 0 replies      
I got a Macbook Pro 2 months ago. Was dreading the announcement as I thought I might have buyer's remorse. Nope.
chomp 1 day ago 1 reply      
I am using the Dell Precision 5510, it is really nice.


Comes pre-installed with either Windows or Ubuntu 14.04 LTS. Also comes with Thunderbolt over USB type-c so you can charge and hook up your peripherals over 1 cable.

stuffaandthings 1 day ago 0 replies      
I just got a T460s, and am super happy with my Arch Linux setup.

The build quality definitely isn't as good as Apples. I had to return my first T460s due to severe light-bleed issues. The new one is fine, though the TrackPoint isn't as good as it was in previous generations. The TrackPad also is not as good as Apples, though I try to keep a keyboard-only workflow so it's not that much of an issue (till it is)

scrollaway 1 day ago 0 replies      
I would recommend the Dell XPS 13.
impostervt 1 day ago 1 reply      
I just got one from System76. I like it a lot so far.


(I got a lemur)

RenatSh 1 day ago 0 replies      
Have no personal experience with any of following laptops, but there is a list of laptops with Nvidia 1060: http://www.ultrabookreview.com/11702-laptops-nvidia-1060/There are even laptops with less than 2kg weight
swiley 1 day ago 0 replies      
The gentoo wiki has a guide cross posted from thinkwiki on used thinkpad shopping which might be useful:


dman 1 day ago 0 replies      
T460. Install Ubuntu. Install powertop and tlp. Run powertop to make sure its happy with the settings on your machine. With the extended battery this setup will get > 10 hours battery life (for programming workloads) and is near silent with an excellent keyboard.
IdontRememberIt 1 day ago 0 replies      
I am a dev who needs to travel light. I was looking for an alternative to the MBP in the MS world.I found it: the Lenovo X1 Carbon.Pros: light, well finished, classic design, technical specs, keyboard is a dream. Cons: some crapware to remove
walkingolof 1 day ago 1 reply      
Thinkpad P50 - 4K screen, Xenon CPU, 64 GB Memory in a supprisingly nimble package.
ljw1001 1 day ago 0 replies      
If there was a truly-good cloud IDE for Java I would buy a chrome book. When I think of the tens of thousands of dollars I've spent on compute hardware over the years I want to cry.
SteveNuts 1 day ago 0 replies      
I just got a System76 Lemur.

The actual build quality isn't great, but it's functional with no frills which is exactly what I wanted.

staticautomatic 1 day ago 0 replies      
I have a Samsung Book and it is unquestionably the best laptop I've ever owned. Happy to answer questions.
brudgers 1 day ago 0 replies      
Dell Precisions are well built.
kozhevnikov 1 day ago 1 reply      
I'm waiting for Dell XPS 15 to get Kaby Lake update.
izolate 1 day ago 0 replies      
I'm quite happy with my mid-2014 Macbook Pro, but if I were in the market for an upgrade, I'd buy a Razer Blade Stealth and install Ubuntu on it.
jdbernard 1 day ago 0 replies      
Maingear's Pulse lineup is worth looking at. I got mine with an Nvidia 980M and 4K display and love it. They recently updated the line and offer it with a GTX 1060 too.

Not quite as thin and light as a Macbook Pro, but not far off: 17.5mm and 4 lbs.


Ask HN: Do you get paid to contribute to a open source project?
112 points by alistproducer2  2 days ago   83 comments top 39
jedberg 2 days ago 12 replies      
I'm not a contributor but I've worked with core contributors to major projects. This is usually how I see things go down:

1) You work on an open source project and an altruistic company hires you to keep working on it. This is ideal, and I've only ever seen it once (Sendmail hired a couple of core contributors to keep making Sendmail awesome back in the 90s).

2) You work on an open source project, people see the work because they use the project, and then offer you a job to keep working on the project, but slowly over time you are working less on things that are great for the community and more on things that are great for your company. I've seen this a lot.

3) You get hired by a company that uses a big project, and they ask you to start making modifications that are useful for the company. It turns out what you did was useful for everyone so you contribute it back. Sometimes it turns out to be a huge win and so you keep working on it. I saw this with Cassandra and some of the folks at Netflix.

4) You create a cool project and your company lets you open source it. It becomes well known and then other companies want to hire you for either 1, 2 or 3. I saw this a couple times were people left Netflix to go to Facebook or Google to continue work on an OSS project.

If you work on Chromium or Firefox, you'll pretty much be limited to Google or the Mozilla foundation (with some exceptions). So if you want to do it to learn some great code but don't have a particular project that you love, I'd suggest one of the more infrastructure projects that are widely deployed if you want to increase potential job prospects.

In summary: There are lots of ways to get paid to write OSS, but you may not like them all.

phkamp 2 days ago 0 replies      
By and large Open Source is how I make a living.

My major source of income is my "Varnish Moral License" (see: http://phk.freebsd.dk/VML/index.html)

It is not particularly easy to shake money loose, but I'm making a living and I'm trying to explain to the world that free software is not the same as gratis software.

(See for instance: http://queue.acm.org/detail.cfm?id=2636165)

As others have pointed out, the browsers are all backed by actual organizations with employees, so that will probably be a tough row to hoe, unless the end goal is to get employed by one of them.

connorshea 1 day ago 0 replies      
One person who has spent a lot of time looking at and thinking about this problem is Nadia Eghbal. She has a repository called "Lemonade Stand"[1], which is a resource that lists a number of ways to fund open source development, and she wrote a paper on the topic of "digital infrastructure" being built on top of open source projects[2]. She also co-hosts a podcast called Request for Commits[3].

Another person worth looking at would be Eric Holscher, who's Twitter feed frequently has interesting insights into running an open source project as your full-time job[4].

The best bet if you want to do open source full-time would be to work at a company like GitLab[5] or Sentry[6], but that does restrict the exact kinds of open source work you can do (at least during working hours).

[1]: https://github.com/nayafia/lemonade-stand[2]: http://www.fordfoundation.org/library/reports-and-studies/ro...[3]: https://changelog.com/rfc[4]: https://twitter.com/ericholscher/status/752572876138565632[5]: https://about.gitlab.com/[6]: https://sentry.io/

mperham 2 days ago 2 replies      
Once my OSS project became popular, I started a business and switched to an open core model. Businesses buy additional features, I get recurring revenue so that I am paid to maintain the OSS and commercial parts.


And to answer the inevitable question: many of my paid features are also available as 3rd party OSS plugins. Many companies prefer to pay for the commercial version so they know the features will all work well together and be supported years from now.

kzisme 2 days ago 0 replies      
Some projects choose to use Gratipay. If you take a look at Gratipay's website their goal is to provide voluntary payments (and eventually a payroll system) to contributors for open work. Any team/project can apply to join Gratipay, but the main stipulation is that "public issue tracker with documentation for self-onboarding, and be willing to use our payroll feature."


Once payroll rolls out contributors set their own compensation.

Some more information on that can be found here: https://gratipay.com/about/features/payroll

Previously Gratipay was Gittip, and worked much like Patreon - essentially a donation or ~tip~ system.

There's still some work to be done, but I've been following this project for awhile. I've been working full time now on other stuff, but I keep up with their updates, and Chad (founder) is a great dude.

ihodes 1 day ago 1 reply      
(Nearly) all our work (github.com/hammerlab) is OSS. We're hiring experts in ML if you're interested in working on big genomic data in the field of cancer immunotherapy. We're a lab (academic not-for-profit, part of Mount Sinai's medical school, run off foundation, grant, and gift money) of software engineers from industry and academia in NYC trying to make research better, and cure some cancer while we're at it (running some clinical trials).
pm215 1 day ago 0 replies      
Yep, I get paid to work on QEMU. I would suggest that your chances of getting paid to work on something and what kind of work that turns out to be depend quite a bit on the project. You can have a look at the git commit history or the mailing lists: if the project really mostly worked on by a single company (as I suspect may be the case with Mozilla and Chromium) then the only paid employment prospects are likely to be with that company. A niche project might not have any opportunities for paid work on it at all. At the other extreme, if you look at the Linux kernel it has a huge range of corporate contributions of various kinds (as well as a lot of work that's purely downstream) and you have better chances of finding one that does the kind of work you might want to do.

Incidentally, previous experience with the specific codebase isn't necessarily a requirement to get a job working on a project: if you have general experience in the field and can work with an open source community then these both transfer over (this is how I got into working on QEMU). Learning a new codebase is something that you typically have to do when you start a new job in the closed source world, after all...

sowbug 1 day ago 0 replies      
This is not the answer you're looking for, but technically it is a valid answer to your question.

I'm a software engineer at Google, where I've contributed to Google Servlet Engine, Omaha (https://github.com/google/omaha), Firefox, Chromium, and Android, among other open-source projects.

Some of these are closed-source projects that were later open-sourced, some are developed in the open, and some are run as a hybrid between the two. I also develop random crap on the weekends, and Google gives us wide latitude to open-source that work if we want.

I recognize you're asking whether one can start with open-source contributions and eventually receive compensation for it. I'm answering that in my case I am compensated for a job that happens to involve lots of open-source contributions, which is the same end result but starting from a different place.

dtnewman 2 days ago 0 replies      
You gave the example of Firefox. In fact, the Mozilla organization, which manages Firefox has plenty of paid employees. See https://careers.mozilla.org/. The same is true for some other major open-source projects such as the Linux Foundation or LetsEncrypt. Being an employee at one of these organizations means you are literally being paid to contribute to open source projects.
SEJeff 2 days ago 2 replies      
I've gotten hired at my last 3 jobs primarily due to open source contributions I've done in my free time for fun. Instead of focusing on doing the code for money, focus on doing it for the challenge, the fun, and most importantly the networking.
xem 1 day ago 0 replies      
I've been hired by a friend to co-develop the EQCSS JS library ( http://elementqueries.com ), and everything turned out very well :)

So I'm here to tell that friends or family aren't always the worst possible clients. If you both know what you're talking about, and are well organized, and define precisely what's the price for each task, it can be a great experience.

today the project has 900 stars on Github and a lengthy Smashing Magazine page :)

More info here:https://www.smashingmagazine.com/2016/07/how-i-ended-up-with...

secfirstmd 1 day ago 0 replies      
Yes of course you can get paid to...For example, we build an open source Android app called Umbrella, which is used to help travellers, journalists and activists manage their digital and physical security on the move (https://play.google.com/store/apps/details?id=org.secfirst.u...).

We pay our developers to help us build it and we are currently hiring an Android dev. http://ie.indeed.com/job/android-developer-passion-human-rig...

Code is here: https://github.com/securityfirst

err4nt 1 day ago 0 replies      
I have a couple motivations that drive me to invest in open-source:

- I grew up in a family without a lot of money, by using open-source software growing up I got to learn a lot of different aspects of digital production, sofware development, and try software I never would have had the opportunity to try if it hadn't been open source. This was incredibly formative in shaping my skill set today, so I have a lot of past open-source contributers to thank for where I find myself today

- I believe businesses have a responsibility to the community in which they operate and where their employees live. This is corporate stewardship, for a big business maaybe they invest in a local school, or sponsor kids sports teams or summer camp. I'm a freelancer, so I wont be sponsoring any sports teams, but I feel its important for my 1-man business to give back in a 1-man-sized way!

So with those two things in mind, a desire to give back to open source, and a desire to help the community I come from - I have tried to find challenging new work that pushes the limits of current technology. I stretches me as a learner & worker, it provides a solution for a problem that meets the clients needs, and if I can find a way to give the solution I came up with back to the community, then others can save time and money by using my work as a springboard for their own solutions.

I write and release lots of use cases and examples demonstrating techniques and solutions, and pour a lot of time, and even some of my own money into getting them out there!

If your aim was to help a project like the Firefox project, and you wanted to be paid for your time - I would try to find a client who has an ee case not currently supported by Firefox, having them pay you to solve their problem, and also arrange that your solution can be sent back to Firefox and included in their codebase. Its a win/win/win for you, the client, and Firefox, plus a bonus win for all Firefox users at the same time!

timeSl 1 day ago 0 replies      
If you're interested in academia or scientific research, there is scope to work on open source projects there. My full time job is working on a particle physics data analysis program, which is entirely open sourced. You won't necessarily have to do a scientific project either - other people who work at the same research facility work on configuration management systems, or databases.

Note that this doesn't have to involve doing a PhD or actually being an academic - it's more a providing the tools that enable academics to do successful research kind of thing.

sundarurfriend 1 day ago 0 replies      
This, I believe, is the core idea behind BountySource [1], and similar sites [2]. People place bounties on problems in open source software that they'd really like to see solved, and "bounty-hunters" (i.e. potentially you) solve these problems and get paid the amount pledged.

And of course, if you're starting a new project, there's the Kickstarter model - followed by, for eg., Neovim, Chocolatey, etc.

[1] https://www.bountysource.com/[2] http://alternativeto.net/software/bountysource/

scardine 1 day ago 0 replies      
Not directly, but given we use open source stacks at work, it is in the best interest of the company when we push patches upstream so there is no cost to maintain a fork.
wcummings 2 days ago 0 replies      
If you're a student, GSoC does include a small stipend iirc.
wkoszek 1 day ago 0 replies      
I'm not getting paid for open-source, so most of my GitHub stuff is for fun/profit https://github.com/wkoszek <- none of these generated any $$$. So if you contributed something, your learning goal could work, but there's no money to be made.

Learn/money idea to what you want is to get a job where open source is welcome, cherished and used. Internships are good to try it out. HIIT in Finland was such place and I interned there, and the result is here:https://github.com/wkoszek/freebsd_netfpga So I've got $$$ for stay + food + cinema for hacking project which I knew we'd publish and I learned a bunch.

If you're not for a rich country, Google Code In and Google Summer of Code be an option. You get a $5000 stipend for spending your summer at home hacking code, you get a decent mentor from a project you're interested in and you get experience.

Another model is to reach out to projects which are backed by a legal body. For example the FreeBSD Foundation helps and support the FreeBSD Project, and they have sponsored projects. If you're good in FreeBSD and have an idea, I feel there'd be some $$$ if you can deliver something useful. FreeBSD has feature idea pages and if you see a fit, you could just ping people and start collaborating.

Last, and I think the hardest, is to start hacking good code in a product you see is (1) open-source (2) backed by a company. I don't know how many hiring managers are techies merging pull requests etc., but even through individual engineers you can get a reference. After 10th pull request accepted by a guy who reviewed your stuff and with whom you've worked, I feel like it's easier to shoot "Are you hiring? I NEED THE MONEYZ!" email.

disordinary 1 day ago 0 replies      
Look at issues, engage with the developers and do smaller commits into Chromeium or Firefox and then apply for a job at Mozilla, Google, or Apple once you have a bit of a portfolio with the project. Firefox has the benefit of hiring remote so you don't need to be near a campus of one of the other big companies.

I work in Open Source and there are plenty of companies that build their business around a product and hire at market rates, normally they have a SaaS model of operation, but you'll have to set your sights a little lower than Chrome or Firefox. These companies include Ghost, Mongo, Elastic, Basho, Cockroach Labs, Automattic (Wordpress), Silverstripe, and countless more.

Another way to do it is to do postgraduate work at a university and get a grant, I know people who work on the Rust compiler in this capacity.

bjelkeman-again 1 day ago 0 replies      
There are some organisations that build open source software and hire developers. We only have one open position right now, but we keep expanding our team. http://akvo.org/about-us/working-at-akvo/
puddintane 2 days ago 1 reply      
I know one common technique for contributors is to put a bitcoin or donation type ID in their profile. This allows for people who see your contributions to go to your profile and give ya something back. Not sure how effective but this is one method I have seen.
dlor 1 day ago 1 reply      
I started and work on the minikube project as part of my full time job. It's developed completely on GitHub, and I manage two other engineers working on it full-time.


agibsonccc 1 day ago 0 replies      
My company started as an open source project. Most of our hires are open source contributors. We're distributed all around the world (many open source companies are like this).

There are usually 3 kinds of paid contributors we see:1. Companies scratching their own itch while we maintain it

2. People I hire to work on the project

3. Phd students technically on a stipend doing their research with us (we do AI)

Another possibility is a 3rd party company paying someone to add a pull request to an open source project whether that be us or others.

woodruffw 1 day ago 0 replies      
For the past 2 summers, I've been paid by Google through GSoC [1] to work do open-source work, all on Homebrew. It's been a great experience in terms of skills learned, and the pay is just a nice incentive for work that I'd be doing anyways.

I'd highly recommend it, although I believe enrollment in a university is required for eligibility.

[1]: https://developers.google.com/open-source/gsoc/

koolba 1 day ago 1 reply      
Yes but not by others. I pay myself to do it (well my company does).

If I need something fixed or added to a FOSS project for $WORK, that's work related and it's perfectly reasonable to do so.

Now getting someone else to pay you is a much bigger stretch. Outside of a couple people who work for really big companies that market commercial versions (or support packages) for FOSS projects, I don't know of anyone that gets paid to work on FOSS.

teddyuk 2 days ago 0 replies      
I got paid/sponsored to work on a couple of projects.

I had met some people from the company a couple of times and wrote something they wanted adapted to work with their products but didn't want to invest in it.

A few thousand to get me to do something I was going to do anyway at some point was a good way for them to get something that they wouldn't monetise directly.

Not sure how to get a gig like that though :)

irfansharif 1 day ago 0 replies      
yeap, interning this semester at Cockroach Labs, Inc.[1] where their central project CockroachDB[2] is open sourced under Apache-2.0.

[1]: https://www.cockroachlabs.com/

[2]: https://github.com/cockroachdb/cockroach/

tedmiston 2 days ago 0 replies      
You might consider talking to Tom Christie of Django Rest Framework. I know he's working on it full time now. IIRC the pay he gets is less than a normal salary, but there are plenty of upsides to the freedom and flexibility he has.
lincolnpark 1 day ago 0 replies      
If you're into working on a Opensource Social Virtual Reality platform, we're always looking for contributors! http://highfidelity.io
SwellJoe 1 day ago 0 replies      
I've made my living based on OSS projects for almost my entire professional career (about 17 years, specifically working on Squid, SciPy, Webmin, Virtualmin, etc.). Not a great living, mind you, but it's kept me in food and houses and given me a lot of freedom. Also, most of the stuff that made money hasn't been the stuff you want to be doing; the code doesn't make money, in the vast majority of cases. It's the stuff you do other than code, but that requires deep understanding of the code, that makes money. Deployments, support, customization, packaging, documentation, bundling and "productizing", and occasionally getting jobs on the strength of your prior contributions. I've written a lot less code than I would have liked in all those years, and much of the code I wrote has been fleeting ephemeral things like shell scripts and packaging scripts.

I don't know a lot about the frontend OSS world, but I know that if you pick a project that has a lot of money being thrown around (in large deployments, for example) then you'll find that it's easier to get some of it to land in your pocket. Niche projects are difficult to get paid for, but can be good places to learn; smaller projects may be happy to have some help and will lend more guidance when you ask questions. But, then again, some big projects have people specifically tasked with bringing new developers up to speed and "community management", so that may even out that difference.

It will never hurt you to have OSS contributions on your resume. It's gotten me jobs, and has allowed me to round up good paying contract work when I've needed it (even in unrelated fields; I've recently done some Ruby work, even though I've never had a real project in Ruby). And, as someone who has hired people, I can say I've only ever hired people who had OSS work I could see. Sometimes unrelated to what I was hiring for, sometimes they were already working on what I was hiring for and I just wanted them to be able to spend more time on it and get them on board with the company road map.

All that said, it's not the easiest way to make a living in software. Getting a real job is probably the easiest way, and if you're lucky you'll get to work on OSS stuff to one degree or another. I've worked on tons of stuff that I never got paid for, and don't expect to ever get paid for. And, if you aren't really directing your efforts toward making something pay, you're unlikely to find that it'll pay.

OSS contribution does not, in the general case, lead to getting paid. But, it can lead there if you want it to.

divbit 2 days ago 0 replies      
The main benefit is giving back to the community, and possibly learning some new skills, and maybe building a github profile. I wouldn't depend on it for more than a little bonus every once in a while. Experiences may differ.
Rbpaservices 1 day ago 0 replies      
Lots of actors supplement their income waiting tables. Artists paint portraits. Writers edit newspaper articles. Devs speak at conferences.
voltagex_ 1 day ago 0 replies      
If you get a chance to go to a FOSS or Linux conference, there are normally lots of people there who are hiring or looking to be hired to work on FOSS.
Findeton 2 days ago 0 replies      
Yes, I work for nVotes/Agora Voting, which is an open source secure electronic/online voting project.
Rbpaservices 1 day ago 0 replies      
Open Source Devs speak at conferences to make ends meet.
voltagex_ 1 day ago 0 replies      
FWIW, I don't think I'd get into a FOSS project just for the chance of getting paid. I think it's really hard to work on something you don't have an underlying interest in, first.
caniszczyk 1 day ago 0 replies      
NoCanDo 1 day ago 0 replies      
jedberg 2 days ago 2 replies      
If you want an interesting way to get paid for OSS software, check this out: https://fair.io/

Basically the idea is that the code is open and free, but if someone uses it a lot to make money they pay you a licensing fee.

Ask HN: How do you organise/integrate all the information in your life?
307 points by tonteldoos  3 days ago   252 comments top 104
gcr 3 days ago 9 replies      
Honestly, I just keep everything in a journal.

I have a folder called "daypages" in my dropbox. Each day in my life becomes a file in this folder. Today's is "daypages/2016-10-26.org" That's about it. I don't really organize by project much.

Each day typically covers the tasks that I intend to get done that day, along with places I've been / friends I've met. The occasional tearful journal entry punctuates the otherwise mundane. Every morning, I spend a few minutes arranging today's daypage and rescuing forgotten tasks from yesterday.

No matter where I am or what I'm doing, a keybinding quickly flips to today's daypage. From there, keybindings can go back or forward by day or by week. I just jot everything down as I think of it or experience it. (I implement this with emacs/org-mode, but i'm sure you could extend this idea to any configurable text editor)

When I need to find something (whether "united frequent flier number" to "cool restaurant in SOHO" to a link that i captured six months ago), it's only a `git grep` away. Emacs has incremental search for this. If I need to schedule something, it goes in my calendar or in that day's daypage.

When I'm in the mood to reminisce, I just flip back to last year's daypage and spend the afternoon drinking tea and reading about the lovely things that happened last year.

It's like Google for the last three years of my life. Maybe this wouldn't work for you, but my small but growing collection of daypages is now one of my most prized digital possessions.

hypertexthero 3 days ago 5 replies      
* Pencil (usually a small, well-used stub that fits in a shirt pocket) and paper (various notebooks, from Target pocket-size spiral-bounds to Moleskin to whatever is at hand)

* Camera - https://www.simongriffee.com/photography/

* Simplenote - https://simplenote.com/ and Notational Velocity - http://brettterpstra.com/projects/nvalt/

* Website with tags powered by Hugo static generator - https://gohugo.io/

Someone please make a browser-based wiki that works offline (HTML5 local storage) and can be used on any computer, including pocket ones like iPhones, and keeps your information synchronized between them.

WWKong 3 days ago 5 replies      
After years of failed attempts I gave up trying to organize everything and started to brutally eliminate most of it. It has been pretty liberating.
diegoprzl 3 days ago 4 replies      

 - Todo lists and reminders. org-agenda. - Bookmark lists. org-capture and org-protocol. - Kanban boards. I don't use this, but kanban.el. - Wiki. Org-mode files and grep/ag with helm. - Financial tools. ledger. - Calendar/reminders. Org-agenda. - Files on disk. dired, org-mode. - General notes. Org-mode. - Literate programming. org-babel. - Mail. mu4e. - rss. elfeed, gnus, or rss2email. - git. magit. - irc. erc. - ...

tekacs 3 days ago 6 replies      
I now use Notion (https://notion.so/, I'm not affiliated) to replace all of the below tools that I have used in the past.

- To do lists (prev. Org mode, OmniFocus, Things, many others)

- Bookmark lists (prev. raindrop.io, Pinboard, others)

- Kanban boards (prev. GitLab, Trello, others)

- Wikis (prev. MediaWiki, Confluence, TiddlyWiki, etc.)

- General notes (prev. my own tool, OneNote, Evernote, Simplenote, many others)

- Photos (I share using Notion and use Google Photos)

- Files (I share using Notion, but still use many services for this, including S3, Dropbox, GDrive, ...)

cpbotha 3 days ago 2 replies      
I hope to release TableTops next year.

It's a non-linear graphical (in two senses of the word) knowledge management software that stores universal links to all of your stuff, local and in the cloud. It also does notes, tags, and script nodes (which can for example be used as alarms / reminders) and represents EVERYTHING as a great big graph.

The main UI element is a TableTop, which is also just a node in the graph that acts as a visual slice through it. Nodes (normal and other TableTops) can live on any number of TableTops.

Non-nerd users can see the TableTops as an infinite number of large work tables with your de-duplicated documents on them.

I have to work on the TL;DR. I also have to work on not rewriting the prototype every few months. :)

lucb1e 3 days ago 1 reply      
Aside for scheduled items (they go in a calendar) and program-specific things (bookmarks go in Firefox), everything's a file.

Unscheduled todo goes into ~/todo.

Documents are in ~/d/org where org is the organization (school/company name). There are often subfolders, like subject name for school. Archive in ~/d/org/_archive/year. If a project is still running, it is still in the ~/d/org root, not in the archive, regardless of how many years it spans. I might sort by year inside that project folder if there are files ready for archiving.

Personal projects I generally sort by language (~/p/py; ~/p/php; ~/p/txt; etc.), for some reason that works well. Projects that I don't touch anymore (use nor expand) go into the archive folder (~/p/_archive). Maybe I should start sorting the archive by year as well, but it's not big enough to warrant that yet.

Collections like downloads, disk images, temporarily cloned git repositories, etc. go into separate folders, which makes them easy to manage and clean up. Unless they really belong with a project (code dependency) or cannot easily be re-downloaded, then they go in the project's folder.

chrisanthropic 3 days ago 0 replies      
I've recently begun migrating most everything to a self-hosted GitLab CE.

This gives me: - A Git interface. - Integrated Kanban board - Integrated Wiki - Integrated CI - Integrated Slack Clone (Mattermost)

I now use Mattermost channels to handle most notes, bookmarks, etc.

I use the kanban board for ToDo lists.

I use the Wiki to document damn near everything.

I've also recently started using Amazon Drive ($60/year for truly unlimited storage) to backup everything. I run it on my NAS which hosts all of my local media and daily backups of all household computers.

Amazon Drive also includes Amazon Photos. Both services have web and mobile apps.

I use combinations of Mattermost and AWS Lambda to schedule/trigger things. (Build and deploy the wife's weekly webcomic every Wednesday at 8am, for example)

musicmatze 3 days ago 0 replies      
I am developing a CLI-PIM suite (commandline personal information management suite) called imag[1].

The goal of the tool is to use known commandline tools (for example taskwarrior (todo), khal (icalendar), khard (vcard), beancount (financial data), mutt (Maildir actually) and so on) and give the user the possibility to (semantically) connect the data of these tools. Then, one can do data mining on PIM data.

imag[1] is in pre-alpha shape and only few things are there by now. 3 days ago I released version 0.2.0 with tools (we call them "modules") for the following "pim aspects": bookmark, counter (this was a first example module), diary, link (to semantically link data), notes, ref (to refer to files outside of the "imag store"), store (to do plumbing in the "imag store"), tag (to add tags to data), todo (basic integration for taskwarrior) and view (to view entries from the "imag store").

As said, we are in a really early stage of development and only few things are there yet. This is a hobby project I'm working on in my free time (also to learn Rust) and I only can make progress if I have enough time to do things.

I also write blog[2] articles about imag every two weeks about what's currently going on in the codebase. Read about a use-case I'm thinking about in one of my blog posts[3] - and yes, these are really ambitious goals!

Feel free to ask questions!

Edit: Fixed link markup. Sorry about that.

[1]: https://github.com/matthiasbeyer/imag[2]: http://beyermatthias.de/tags/imag.html[3]: http://beyermatthias.de/blog/2016/08/07/imag-usecases/

cypherpunks01 3 days ago 0 replies      
I limit it to three organizational tools:

- Bullet Journal

Major tasks, journaling, and goal tracking in a Bullet Journal on a per-day basis. Monthly goal lists live in a separate entry, and daily scheduling happens via a month page. Most self-driven work comes in through here, and I'll usually keep this open nearby while I'm working. The physicality of the journal helps a ton.

- Gmail

Inbox-as-todolist. "Starred first" view allows top priority tasks to be visually distinct. Most work from other people comes in through here, however it's really convenient to schedule or bounce things to the near future. Lots of people use Boomerang for this but I prefer followupthen.com - I can send/fwd an email to "tuesday", "january" or "3weeks" @fut.io and it pops back into my inbox that exact morning.

- Google Keep

Random unassigned tasks live in Google Keep, the Android "OK Google - Note to self, get new shoes" voice command saves directly into Keep. This is extremely convenient as a place to store random nagging thoughts while walking down the street. Having a Keep widget on my homescreens ensures that I see the list often.

codingdave 3 days ago 0 replies      
One text file and one trello board.

I just throw in all my personal notes and to-dos in the text file. And remove them when things are taken care of. If it gets too crazy, I either get stuff done, or purge projects. LArger, long-term projects and pipe dreams go in the trello board.

Financial stuff runs automatically between direct deposit and auto-pay on bills. So I just put all mail or paperwork that show up on the desk in front of me, and if there are papers there, I do something about it, then put them in a filing cabinet.

Everything work-related goes into tracking systems at work.

So... just one text file, constantly open and with frequent edits, and a trello board I check out when I am caught up on things.

laxatives 3 days ago 1 reply      
* Emacs org mode to prep for meetings, maintain TODO lists, and general notes

* Also keep Slack open when I am working. If someone needs something, they can ping me on Slack and I will be available within 5-30 minutes.

* Gmail stars for everything I can't address immediately. Everything else is dealt with immediately and inbox count is 0 for most of the day (both work and personal addresses).

* Iphone calendar (with alarms) for everything I am putting off for later or need to schedule/remember

* Iphone notes for everything I am putting off indefinitely (movies/books/games to consume, gifts to gift, songs to learn, general goals for the next few years, travel destinations, events)

* Occasionally I leave things out of place so that I remember what I'm doing next time I leave the house (tennis racket on the bike + tennis shoes and shorts/compression shorts in my bag)

That's pretty much it. I really don't like having to keep things in mind. And when I want to zone out on a run or a vacation, I can safely do so knowing whatever I need to accomplish is on one of those lists and will probably get an alarm from my calendar if its urgent. I used to love using Pocket for reading papers/articles when I don't have a reliable connection, but its completely broken now and doesn't save pages consistently or renders pages unreadable.

IMO maintaining a wiki is way too slow and (depending on your work place) only accessible across VPN, which is incredibly inconvenient. Paying someone to act as scrum master/maintain a kanban is generally a waste of money/time as well, unless you work at a huge company (10,000+ people across hundreds of teams). But I'm biased and have always had a strong preference for small teams.

howeyc 3 days ago 0 replies      
I've given up on a whole unifying program or application. I've also been burned by either closed source apps or web apps. Very hard to get your data if support stops or you just don't have it. I try to stay as close to plain text as possible these days.

Bookmarks - Pinboard with weekly backup to json/text.

Notes - A bunch of markdown files in folders (diary,projects,etc). Every day is a new file. I have @tags littered all over my notes for searching. Beauty is that there are many apps that can write markdown and search plain text.

Finance - ledger-cli, well, actually my own version with better reporting abilities, in my opinion.

Task management - to-do.txt. Again, many apps to choose from to manage the file.

Syncthing - Sync all of the above everywhere, plus other stuff.

Backup - restic and rclone.

Also, everything I've mentioned is cross-platform. Maybe not the application, but the source data is, and has an application that can modify it on almost every platform.

timeout27 3 days ago 0 replies      
http://freeplane.sourceforge.net/wiki/index.php/Main_Page Freeplane - mind maps

I've used txt files/folders, then excell/word, then markdown (easy to write & read), and wiki.Then I found freeplane, started to play with it and never got out, its incredible: use plain text or html (to format your notes), insert images, links to external files/folders, the visual mind-map representation gives a great overview of your notes and lets you organize in a foldable tree (branches, parents, childs) your notes (like in deeper layers of detail).

After the initial text/html nodes, branches and folds, I started to use "styles" to add icons and automatically format certain nodes with a background color (ex: TODO=yellow backgrnd, DONE=green backgrnd, PROBLEM=red backgrnd, ...)

Never really got into other freeplane features such as "notes" view or node-attributes. But it all went up to another level when I discovered that its possible to create http://www.freeplane.org/wiki/index.php/Scripting:_Other_lan... freeplane-scripts (in groovy or java or javascript, or any other JSR 223 language like Ruby). And using freeplane-script I started to make my own scripts, to automate repetitive tasks and improve its behaviour for my needs.

Why is freeplane better than the others methods I tried before? It organizes knowledge in a foldable tree, that gets bigger and bigger over time, and after a few years, its just easy to "find" in the notes. It also performs quite well (my maps are huge, huge, years old huge)

Have a look and decide for yourself.


mbrock 3 days ago 1 reply      
Org mode for Emacs does most of that.

Even finances and accounting: http://orgmode.org/worg/org-contrib/babel/languages/ob-doc-l...

tytrin 3 days ago 0 replies      
I have found that using a Bullet Journal ( a nice pen and paper solution) I can cover my Calendar, Tasks, and even general notes rather well.You can find instruction here:http://bulletjournal.com/, but the best part is that it will work with any notebook you have lying around!

For Kanban's, I have used Trello, but got a little annoyed. I recently found this personal Kanban project:https://github.com/greggigon/my-personal-kanbanIt's use is very simple, and I find that it works well for me. A little difficult to share among a group though.

Finally for All the rest of my documentation: Keepnotehttp://keepnote.org/This glorious little tool handled nearly anything you can throw at it. It supports Windows and Linux ( I am not certain about Mac), and it is search-able. I have used it from all my work related notes, specifically for debugging solutions, like Binding Exceptions in Telerik.

jamesisaac 3 days ago 2 replies      
Self-developed solution that gives a hierarchical structure to to-dos, reminders, and related information:


For anything which I can't figure out a way to tie to one of my current goals, a helpful general rule of thumb is that, it may not actually be that important to hold on to. There are of course exceptions, but they're few enough that a nice folder structure on my hard drive can catch the rest.

I've been using Pinboard for a while as a bookmark list, but find the lack of any structure beyond tags a bit limiting. Just feels like I'm dumping links for the sake of it and will never really end up referring to them again.

jurassic 3 days ago 0 replies      
It's not a perfect system, but I find index cards to be superior to notebooks in almost every way. Notebooks are good for linear content, but for most of what you described index cards are better because they are modular, fileable, and sortable. Before the Internet, the world ran on index cards.

Cool quote in a book? Put it on a card and file it by theme. Reminder about feedback I want to write up for a colleague? Put it on a card. I did something really great at work and want to remember it at annual review time? Put it on a card and file it under Personal Achievement. Etc. Recipes, Writing ideas, presentation first drafts. Cards work well for all of that.

I'm really using a combination of two systems. The first is Ryan Holiday's index card system for harvesting the wisdom and interesting bits from reading. The second is an index card version of the 43 folders tickler file. It's not a perfect system, but I love t and I like that it is something I can keep doing forever independent of any stupid decisions by Apple or app developers going under.

To get started you need:

- Some nice index cards. I like the Exacompta ones.

- Tabbed divider cards. Smead makes really nice ones.

- A way to carry some with you all the time. Right now I'm using the Nock Co Fodderstack for this.

- A way to file them. You can get some crappy boxes on Amazon, or something nice and vintage off eBay or elsewhere. Index cards used to be a lot more widely used than they are today, so the old selection of index card furniture is much better than what's available new.




Leftium 2 days ago 0 replies      
Taskpaper[1]: a simple text file that has conventions for tagging, search, filtering, etc.

I'm building an enhanced text editor that makes viewing/editing taskpaper files more convenient:

 - Interactive programmatic access via an embedded scripting console - GUI for creating/editing tasks and tags (like calendar widget, autocomplete) - Enhanced views, for example: - Calendar view - Priority view (automatically sorted by @due(DATE) tags) - Bookmarks view - HTML "linkified" view - Recurring tasks
Some other influences besides Taskpaper:

 - Bkmks [2] - Drafts app [3] - Simplenote [4] - Notational Velocity [5] 
I originally tried to build an enhanced editor for Todo.txt files[6], but the format was too limiting.

[1]: http://www.taskpaper.com/

[2]: http://www.bkmks.com/

[3]: http://agiletortoise.com/drafts/

[4]: http://simplenote.com/

[5]: http://brettterpstra.com/projects/nvalt/

[6]: http://github.com/Leftium/todo.html

jordanlev 3 days ago 0 replies      
I've given up on task-specific tools -- because of both lack of structural flexibility and lack of data portability (several computers at home and work, mobile devices, family members you need to share a list with). Now it's all just text files in dropbox, with the occasional Excel spreadsheet for budget/money stuff.

Over time I've figured out a good organizational system (folder hierarchy) that makes sense to me so I know where to find things when I need them.

The "safety" of plain text files feels good to me for such personal / important data (after years of trying different apps/services, only to have them go out of business or cease development or not work on a different platform or have sketchy privacy policies).

antocv 3 days ago 0 replies      
With many ~/development folders on various containers organized by "tag" and a ~/projects folder, a top-level todo.txt, and a todo.txt in each ~/development/project_name, with vim and ssh. Just use ssh + vim + a "server" at home, basic files and directories and containers to organize work.

Documents, sheets and notes, are in nextcloud, as well as pictures and other things. Calendar is there as well. Its all in one server, with raid0 ssds, raid5 for massive storage, a few "service" VMs like for nextcloud, a few containers here and there, with easy access and overview of it all on the hypervisor. Android phone has notes which is nextcloud notes application for simpler reminders/buy-milk kind of things.

jonshariat 3 days ago 1 reply      
GTF(Getting Things Done) method with OmniFocus

Boagworld has a great video on his setup and how it all works: https://boagworld.com/working-in-web/omnifocus-2/

Getting things done book: https://www.amazon.com/Getting-Things-Done-Stress-Free-Produ...

OmniFocus: https://www.omnigroup.com/omnifocus

newfolder 11 hours ago 0 replies      
Currently using a Kanban app called Wheatbin: http://Wheatbin.com

The github repo is here: https://github.com/wheatbin/wheatbin

rukuu001 3 days ago 1 reply      
This is deeply uncool, but I use Excel.

Very fast to make a quick list, but of course awesome filtering/calculation/lookups etc.

I have a to-do.xlsx for work, and one for home. Different sheets for to-read, to-call etc.

mcovey 1 day ago 1 reply      
I've never found one place to keep everything, so it goes into many different places. The only thing I need to remember is where everything is, which is a significantly shorter list than what everything is. I mainly use Fastmail.com, Pinboard.in, MEGA.nz, Lastpass.com, and InoReader.com. At work we use Google Drive a lot to share/edit.

If there was a service that could do email, calendars, contacts, notes, passwords, bookmarks, rss/atom feeds, file storage/sync, and document editing well and in an integrated fashion (at least all within the same interface), that would be great, but I doubt it will ever exist. Google has made all those things, but they don't offer any sort of combined solution and have about 3 different versions of notes/to-do/bookmarks, none of which are integrated with anything else.

buzzybee 3 days ago 1 reply      
A lot of the changes I've made to my personal information architecture have to do with avoiding getting stuck on the things I don't need to worry about yet. I've tried to make personal wikis many times, for example, but the friction is too high. I do want more of a "searchable database" for my stuff, still.

* Calendar as overarching to-do, covering errands, appointments, blocks of "do this work". Sometimes I follow it closely, other days it is largely a suggestion.

* Mindmapping to collect notes, outlines, brainstorm. Lately I've used Coggle [0] for its easy sharing. When I need to add details, the nodes may grow into Gdocs links.

* "Scratch" text file when I just need to jot work things down and I really don't care about the organization yet. If it becomes more lasting I tend to move towards the other tools.

* Trello[1] when I want to cut out more discrete tasks over a longer period and log their status.

* Riot.im[2] to talk to myself. This is something new I'm trying, which is that I can start a conversation without having someone in the room yet, by thinking "out loud". Then I can subsequently invite people in to continue it. A tiny nudge in context that distinguishes it from dumping a text document on someone.

[0] https://coggle.it

[1] https://trello.com

[2] https://riot.im

nithinr6 3 days ago 0 replies      
I've a Trello personal board with To-do, Doing, Done lists along with a 'To read/watch/listen'. I send everything interesting that I see to the To Read list and once I finish going through an item, if it's interesting enough to be saved for later, I send them to Pocket and tag it appropriately. I've a special tag called 'Toolkit' to save frameworks and other techniques that I cross-tag with other generic tags. I also add notes for videos, podcasts etc as comments.

Right now my Trello board is organised based on the work I need to do for a week. I haven't really experimented with changing this frequency though as it pretty much works for me now. And a lot of times, I need to sub divide my weekly tasks and for that I use checklists. When needed, I create separate reminders for these sub tasks using the Reminders app(primarily because it is super fast and syncs well across my devices).

When I need to look for something, I first use Spotlight to search for it as it can search across all of these apps. Works most of time, but I have to search individual apps for better results at times.

rayalez 3 days ago 0 replies      
I use emacs with org-mode.

I have a file where I keep project ideas organized by category(webdev, ML, writing, etc).

And I have a file where I keep my daily notes(I write down most of my thoughts, it helps me to focus).

In that file, I use tags like:

- #pst and #vid for blog posts and video ideas

- #prj and #sup for project and startup ideas

- #ftr (or #bug) for feature ideas for my projects

- #link for useful links

- #jok for great jokes I've encountered or came up with.

That way I can always search through this file and easily find information I wrote down years ago.

I also put symbols >> and >>>> at the beginning of the most important ideas, so that I can easily search and find the most important epiphanies I've had this month/year.

Also, I highly recommend an app called Editorial for iOS. I use it constantly, it's incredibly powerful, and has amazing automation features. I can create shortcuts to auto-insert current date, some tags, etc. I can search through all of the dropbox files, and I can write python scripts to automate any text manipulation. It's amazing.

rcarmo 3 days ago 0 replies      
Up until recently, I used a Mac for everything, so everything was on the native services:

 * To do lists/Reminders - macOS reminders * Bookmark lists - Safari bookmarks * Kanban boards - Trello * Wikis - http://taoofmac.com (https://github.com/rcarmo/sushy for the engine source) * Financial tools - Numbers or Excel * Calendars/Reminders - macOS Calendar * Files on disk - Dropbox + a NAS * General notes - Evernote (now OneNote) * Mindmaps - Mindnode (works great on iOS) * Photos - NAS 
These days I have to use a PC at work (I'm at Microsoft), so a few things changed:

 * I left Evernote around 6 months prior to switching jobs because the app was becoming useless and migrated everything across to OneNote (which was free anyway). That gave me: * To-dos * Notes * Blog drafts (I wish it did Markdown, but...) * Occasional web clipping I want to keep beyond Pocket. * I started using Pocket more to bookmark stuff I'd want to follow up at home or on the move * I started using Chrome more (thought about Firefox, realized that Chrome also kept extensions synced the way I like it. Would switch if I could set up a private sync backend) * I started using OneDrive alongside Dropbox at home (I don't run Dropbox on my work laptop, but some files I might need at work like school schedules and stuff go on OneDrive) * Trello was replaced for work purposes by Office 365 Groups (works pretty well) * My NAS now backs up nightly to Azure * I use Outlook for work calendars, iOS to access everything (Outlook on iOS is pretty good and has its own isolated calendar, which suits me fine)
Mindmaps, reminders and to-dos are always with me on my iPhone (both work and leisure), so no need to sync them. My personal wiki only has public stuff and doubles as my blog, so the copious amount of public references I amass (see http://taoofmac.com/space/infoviz, http://taoofmac.com/space/dev/Python) is still useful regardless.

In general, I don't mix work and personal stuff (OneNote is an exception because it can _access_ different notebooks, but they're on two separate accounts. I generally access my "Shopping" notebook at work to check on to-dos and add stuff, then close it).

neals 3 days ago 1 reply      
I Google Spreadsheet almost everything. All my files I keep in Dropbox. Code on Github and Bitbucket.

I can be up-and-running on a new system in under an hour. Just install my IDE's, get the Adobe CC from the cloud and get started.

vermaden 2 days ago 0 replies      
> * To do lists/Reminders

I use a file called ~/TODO for that in this format:

 | % cat ~/TODO | == EASY == | todo/no/progress | . task/some/progress | x task/done | | == MEDM == | todo/no/progress | . task/some/progress | x task/done | | == HARD == | todo/no/progress | . task/some/progress | x task/done
> * Bookmark lists

I use a file called ~/SITES for that in this format:

 | % cat ~/SITES | | begin category | http://link link name | http://link <b>more interesting link</b> | begin subcategory | http://link link name | http://link <b>more interesting link</b> | end | end
I then generate HTML file SITES.htm with 'clickable' links with a script from that file in cron(1) hourly.

> * Financial tools

Just a XLS file with GNUMERIC/LIBREOFFICE for editions.

> * Calenders/Reminders

I use a file called ~/CAL for that in this format:

 | % cat ~/CAL | 09/28 c car/something | 10/04 B birthday/someone | 10/08 x some/event/other | 10/12 N some/name/event | 11/10 B birthday/someone/else
... and everytime I spawn a new xterm(1) terminal a script that parses ~/CAL starts with 21 days upfront to remind me what I have to remember, like that

 | == | TODAY IS 10/26 B birthday/someone | 15 day(s) to 11/10 B birthday/someone/else | 22:54|hostname|dir % _ | ==
> * Files on disk

ZFS with LZ4 compression + GELI encryption on FreeBSD.



blaedj 3 days ago 0 replies      
To Do lists:emacs org-mode and agenda. I have one 'todo.org' file with top-level headings for each project. I keep an org-agenda buffer open to display the todo's scheduled for the current day. I try to go through my todo file once a week and clean it up, archiving 'DONE' items and deleting items that are no longer relevant or haven't been touched in a while. All my emacs org files are synced via dropbox. BTW, org mode really is amazing. I keep finding little nuggets that delight when reading about others' org-mode setups.

Bookmarks:Pinboard, as well as pocket/instapaper for offline reading of bookmarks.

Financial tools: Mint by intuit to keep track of all my accounts, numbers/excel for budgeting.

Calendar/Reminders: Google calendar and macOS calendar. I use siri/google assistant to capture spur-of-the-moment things that I don't want to forget.

Files on Disk: Dropbox. Backblaze for backups. Google photos and icloud photos for extra photo backups.

Wikis/General Notes:Emacs org mode. I keep a journal.org file, that I sporadically update, as well as an ideas.org file for things I'd like to investigate/try build in the future.I use evernote for lists/notes from mobile devices as I haven't figured out a good way to use org files on iPhone/Android.

There isn't much overall integration, I just know that for important files I reference dropbox, Financials and Bookmarks have their own services, and then notes are going to be in emacs or evernote. Events/reminders handle themselves as I typically schedule them in the stock calendar/reminder apps and forget about them until I get a notification. I don't find the lack of integration to be a problem actually, as long as I know where to look for something based on what it is (e.g. notes -> orgmode/evernote, events -> calendar/reminders, files -> dropbox etc.)

mattbgates 3 days ago 0 replies      
I created https://mypost.io/ for myself which is a web content creation tool and lets you put up a web page on the Internet in seconds. I find it handy when I'm with clients and I'm writing a list of things they want. I can use it as a checklist and later on, go back and delete it if I don't need it anymore. I have used it for demonstration webpages or just to keep track of projects I'm working on or to-do lists or for brainstorming. I even built in a feature that keeps a list of all your saved URLs so you can return back to them at any time. If I am working with a few people on a project, I just share the URL and give them the password and they can work on it as well. Definitely useful. And yeah, it's a free tool.
walterbell 3 days ago 0 replies      
2Do (http://2doapp.com) on iOS/Mac/Android with devices synced to self-hosted CalDav server (http://sabre.io) on Linux. 2Do can deep link to other iOS apps/docs. It can auto-create tasks from email using regex filters. Multi-year track record of regular updates, privacy-oriented design, robust with large number of items.

Calibre (https://calibre-ebook.com) for docs/ebook management (metadata), with Recoll (https://www.lesbonscomptes.com/recoll/) for full-text and metadata search on Linux.

DrNuke 3 days ago 1 reply      
I have a 16GB iPad, about 12GB available. I keep all I really need within 6GB and remove the dead wood weekly. It is still a few thousand documents but, alas, I am fully in control.
elorant 3 days ago 0 replies      
I keep a detailed daily journal and every project gets its own journal with three separate documents. One to log progress, one for general notes and one for a to-do list. On the journal I write pretty much everything that I think needs further action. Then at the end of the day I move things from journal to the specialized lists/logs. Its a lot of documents, thats for sure, but its the only way Ive found to keep everything tidy, especially since I enjoy working on multiple projects.

The journal I keep is on paper. I find that writing down helps me clarify things in my head. It works better than writing on a computer, perhaps because hand writing is a slower process and you get time to think things better.

wuschel 3 days ago 0 replies      
As simple as possible, no "dashboards" needed :)

-- Calendar for events e.g. Google Calendar

-- GoogleMail with its task function for emails

-- one file for yearly, quartely and weekly goals

-- a normal file structure, with a README in each respective project folder, all literature, documents contacts, work, etc

-- one hard copy lab book for conceptual work.

dajbelshaw 3 days ago 0 replies      
As a knowledge worker, I've found that there is no 'best' way of organising information. It depends on what it is that you're doing.

Having said that, the things I come back to are Trello (Kanban-style boards), Pinboard.in, a personal wiki, and Google calendar. I like everything web-based so that I can access things wherever I am and whatever device I choose to use.

Over and above that, I use a paper-based daily planner that I've iterated over time. I pull everything to do that day on to it, then bin it at the end of the day.

Version 3 is here: http://www.slideshare.net/dajbelshaw/dougs-daily-planner-v3 (CC licensed)

0xCMP 3 days ago 0 replies      
What we need is an org-mode for the web. Power of org-mode but designed for browsers and mobile first.

What all these apps and lists get wrong is the following: What you know and what you need to do are highly related.

personjerry 3 days ago 3 replies      
Out of curiosity, is anyone interested in some sort of app for this purpose? Like, organizing references to all your other data, thoughts, relationships. I'm not sure how it would work - just thinking about it right now.
vcool07 3 days ago 0 replies      
Office work:

I usually use a combination of OneNote & Outlook for office work organization.

- One note: For organizing web clippings, information, self help tutorials, information that I might need to reference back some day etc.

- Outlook: For my meeting requests, reminders, appointments, TODO tasks etc.


- Trello : For my goals and my self-learning stuff (which I rarely re-visit after creating it ;))

- Google Keep: For quick lists/reminders

- EverNote: For some important articles/algorithms/programs that I might need to refer time and again at an urgent notice over my smartphone.

- Google calendar: I failed at integrating this with Trello, but otherwise, this is an excellent tool for scheduling your day (exercise hours, recurring tasks etc).

Overall, I find OneNote to be an amazing tool at organizing information and I think this has the potential to be that solution for 'one size fits all' scenario. I'm really surprised MS just gives it away for free and doesn't market as much as its other Office tools. The only reason I don't use it for my personal tasks is due to the lack of a good android port. OneNote was(still is?) atrocious w.r.t memory and execution on android. The desktop/mobile app would hardly sync well most of the times and the layout design was messed up. Felt to me that someone just copy/pasted the desktop app on android with little modifications.

Gmo 3 days ago 2 replies      
I'm piggy backing on this.

I still have found my holy grail : a kind of knowledge management software where I could just stuff things probably with tags.Not only links (I have pinboard for that) but ideas, snippets of knowledge etc.

This would be online (not necessarily self-hosted) and I'm willing to pay for that.

Accessible via smartphones and potentially with an email gateway would be great.

I don't think mindmapping software fit the bill. I really would like tag and/or full-text search.

Wikis come close but it's quite cumbersome to add a piece of info.

ews 3 days ago 1 reply      
After trying many different options, I am sticking with org-mode (encrypted with ELPA) + dropbox or syncthing for now. I schedule weekly sessions (usually on Sundays) to sort out all information, check if my TODO items are done or blocked and make sure all my tagging is consistent.

Only exception is when I am on the go and I want to take quick notes on my phone. For this I use google keep, making the notes sticky until I am in front of any of my laptops and dump the note into org mode again.

mtrimpe 3 days ago 0 replies      
I use Evernote als a log for all correspondence, notes, checklists, clippings, articles etc. all sorted by creation time and tagged with relevant concepts.

Then for every task I would ever like to do at some point in the future, from bucket lists type things to project tasks which aren't yet scheduled, I have a huge WorkFlowy list.

Then for ToDo that I'be actually committed myself to I actually use Google Sheets where each mini-project has its own row with the next action defined and a history of all activities in the context of that project (both previous next actions and other things I did for that project) on the rest of the column. That allows me to keep a 'narrative' of each projects and to group them by meaningful time horizons (i.e. on a specific day this week, next week, the week after, the month after etc.)

This sheet works really well for me together with some Keyboard Maestro macros and allowed me to grow my perfect system but it is definitely time for turning that into a proper app though.

Whenever I get around to making that app I'd also love to include daily, weekly and monthly checklist/self-questionnaires/journals for additional level of planning structure.

tmaly 3 days ago 3 replies      
If it is super important, I write it down in a hard bound journal. I find things get lost in digital note keeping apps. Yes you can search, but there is no structure to the data so you get back a whole bunch of unordered keyword matches.

I often thought that store some information as Prolog facts would make it more accessible while being somewhat structured. I have not had time to build a proof of concept on this.

rmhsilva 3 days ago 1 reply      
I have a few principles:

- Spurn ~. It generally gets cluttered with machine specific stuff.

- The primary goal is to preserve knowledge.

- The data should be easily readable in 20 years time on hw/sw not yet invented.

My 'digital life' goes in its own folder (eg /foobar), which is Syncthing'ed around to various machines, and backed up periodically. It's very big, and contains a snapshot of 'everything' I want to preserve.

Cron run various scripts to pull data from multiple services (e.g. Pinboard, DayOne, etc) so if they ever go down, I have the data I created on them.

I segment documents and projects that I create / work on from those I've just downloaded to use. This results in a fairly simple top level folder structure:

- docs: Documents and textual data

- dev: Projects, design work, development etc

- external: External tools, software, etc

- media: mostly video/audio

Projects of course do live in their own git repos.


- Emacs org mode for notes, todos, etc (best in class)

- DayOne for journaling and notes while mobile (integrated with org notes)

- Pinboard bookmarks

I'm not a huge fan of using fancy project management software tools, because fashions change, tools go out of date, data gets lost etc. Straightforward text files for most things is the best combination of usability and persistence for me. Wikis are great, but suffer from this - they need maintaining, software needs updating, the database format could change, etc. A bit of work to get a text based system going is totally worth it ;).

peterfisher 3 days ago 0 replies      
* white sheets of printer paper for drawings and sketching out ideas* evernote for storing everything long term. from photos of notes, typed notes, and drawing made with iPad. (i have about 3000 notes going back to 2008)* omnifocus for todos* google calendar for events/meetings* simplenote/notational velocity for anything which doesn't need to stick around but needs to be recorded quickly
kowdermeister 3 days ago 0 replies      
I don't find the lack of integration a problem. I use PushBullet as an inter-device-person tool to share stuff. Not perfect, but more than good enough.

 * To do lists/Reminders -> Google keep * Bookmark lists -> Chrome bookmarks (automatically synced, search works in content as well) * Kanban boards -> Trello * Wikis -> Nope * Financial tools -> Nothing * Calenders/Reminders -> Google calendar * Files on disk -> Total commander / Dropbox * General notes -> Asana * Music -> Google music * Videos -> YouTube
There's no real one platform beats all and in my opinion there won't be because there are so many things to get right that it takes a huge company and tons of resources to get it right.

Instead we have what we have today: lots of alternatives that act as replaceable parts of a bigger web. Luckily most of them have API-s and things like IFTTT and Zaiper exists.

rabboRubble 3 days ago 0 replies      
Date events including timed reminders - Google Calendar

Goals - Streak (IOS app)

Tasks both timed & untimed - Any.do (IOS app)

Financial - Quicken (IOS + desktop app)

Long term notes - OneNote

Short term notes - Notes

Files - I have a disk structure that makes sense for me. Augments with OSX tagging to ensure documents that require timely deletion are dated & marked for deletion.

These all reside on my phone's first screen home.

mikeleeorg 3 days ago 0 replies      
I use a combination of:

* Email

* Calendar

The tools currently are Gmail and Google Calendar.

I've tried many times to try new tools and processes, such as Trello, Evernote, Remember The Milk, Getting Things Done, Kanban, etc. Pieces of those processes have made it into my workflow, such as weekly, monthly, and quarterly goals. But the tools still end up being email and calendar.

ivanyv 1 day ago 0 replies      
I'm always trying things for this, first WorkFlowy, now:


I also tried Notion but it's very slow.

zubairq 3 days ago 0 replies      
I use a txt file edited in Lighttable
nazgob 3 days ago 1 reply      
There was a great thread some time ago on HN about PKB (personal knowledge base). You might find there a lot of info. It prompted me to look for new solutions, I made a good progress but I'm still not happy. The best thing I use and can recommend is TiddlyWiki. I keep it in Dropbox so I can access it on mobile.
staticvar 3 days ago 0 replies      
This might sound crass but... use a computer. There are millions of applications that run on computers to do those things. If you are growing tired of the lock in of an application and want something that will work on all devices and for the rest of time, try using a computer in a basic way by just storing text files in a folder. I have one folder of text files that follows me around on every device thanks to Dropbox. My `todo.txt` is there, my `shopping-list.txt` is there, my `calendar.txt` is there, my `travel +notes.txt` is there. If I want to find an item with a particular tag I use what ever OS to filter by the files by `+tag-name`. I use `+` instead of `#` that twitter uses for tags because sometimes `#` will mess with an OS searching for files.
unknown2374 3 days ago 0 replies      
I have been using Turtl (https://turtlapp.com/) for notes, bookmarks, sharing files and journaling. It runs on Windows/Mac/Linux/Android (iOS coming soon) and have both cloud-hosted and self-hosted options. It helped me drop OneNote and Google Keep. It supports tagging the notes, but reminders are still lacking, I use Tasks (https://play.google.com/store/apps/details?id=org.tasks&hl=e...) on my Android phone to keep track of repeating tasks and reminders.

For side-projects kanban boards, I just use Gitlab issues' kanban view.

lcall 3 days ago 0 replies      
The purpose behind http://onemodel.org is just this. The problem we have stems from working on piles of words, which makes knowledge hard to compute. The idea of http://onemodel.org is to treat knowledge at an atomic level, but still very efficiently for a human, so we don't have the constraints of other systems. More info under the "About" and other links at the web site. It's visually ugly and no mobile support yet but I use it daily and I (the author) think the ideas are needed.
agilebyte 3 days ago 0 replies      
1) A Google Doc that has different headings like Inbox, High/Medium/Low Priority, Scheduled and then Notes. I've been using this for 2 years and wanted to write an app that would extract the dates from the Scheduled category into a calendar, but found out a simple document such as it is is sufficient.

2) I don't. If it doesn't fit into the above-mentioned 2 page document it's not important enough to be categorized. Categorisation (control) used to be a major source of stress in my life.

3) For academic paper/thesis writing I am actually working on a software to organize all research/quotes and then keep references to them in a "main document". Contact me if you'd like to know more.

modoc 3 days ago 0 replies      
While I understand the desire for a single integrated tool, I think it's better to use the right tool for each job. Especially since people work/think differently, the best way to handle a ToDo list for you may not work for me. Similar to the UNIX tool philosophy I think each person needs their own collection of tools to solve that long list of problems.

For me:

OmniFocus for ToDos/Reminders and synced issues from JIRA (work) and GitHub (personal projects)

Evernote for taking notes, capturing webpages/blog posts I want to save/read later

DevonThink for going paperless at home. Scanning everything that comes into the house.

pps 2 days ago 0 replies      
I'm using dynalist.io - it's like workflowy, but with 1000 more features and they're working on it constantly, adding new features and improvements every week ( http://blog.dynalist.io/ )

notion.so looks also nice, but I can work more smoothly in dynalist

galfarragem 3 days ago 0 replies      
For the bulk of my personal organization (file organization, note taking and todo lists):


My stack is becoming simpler as I declutter my life. On last update, I quitted Evernote and my notes are now managed on a text editor. I still use other tools for:

- collaboration (Trello, Slack, Gmail)

- finances (Spreadsheet: informal balance sheet updated every quarter).

- RSS (Feedly)

- image references (Pinterest: images with searchable descriptions. Unfortunately their search engine is bad, worse than Evernote's)

anotheryou 3 days ago 0 replies      
- flat file markdown wiki, md files synced to my phone with managed owncloud. Has a few main categories just to avoid the need to tag. i use it for todo, long written texts (writing my thesis in there), song sheets, arty collections, recommendations, documentation etc.

- managed owncloud for calendar

- managed, but small and lovely email provider with catch all on my own domain

- semi managed hosting (shared server with multiple non root users and ssh, unique thing) for website and quick online sharing of text or screenshots (upload via shareX+ftp)

blantonl 3 days ago 0 replies      
My workflow:

Evernote (coupled with a ScanSnap document scanner) ->

 Documents Financial Statements Contracts Receipts Code snippets Infrastructure notes Invoices / POs / other financial docs
Google Apps ->

 Email Calendar Bookmarks (Chrome) Spreadsheets Docs
Doit.im ->

 To do lists Reminders Project Management (lists of to-do lists)
Handwritten ->

 Notepad+ for iPad Pro (then shared to Evernote)

postscapes1 3 days ago 1 reply      
I have been using a service called Airtable.com (no affiliation) lately to organize tasks and projects.

It is like Google spreadsheet and Trello made babies in my book when you utilize it's ability to add filtered Views and connect and link data across tables.

Attachments from other services, calendar views and ability to do low level formulas are other standout features imho and it just seems to fit how I actually think better than any service out there.

patrickdavey 3 days ago 0 replies      
I use vimwiki for most things (in Dropbox), you can keep todo lists etc. in there. I'm moving towards a per-project wiki as well. I built a horrible hacky android app which hooks into any of the "sharing" menus which just appends a link into my wiki, so that's quite handy.

For email, I've really been enjoying Google Inbox, the ability to sleep items is nice, and the reminder function is quite a handy TODO list of sorts.

But mainly it's the vimwiki for me.

Sir_Cmpwn 3 days ago 0 replies      
For to do lists/reminders: https://f-droid.org/repository/browse/?fdid=com.icechen1.not... - it just puts them in my android drawer.

For pretty much everything else, I usually just keep text files in ~/Documents.

Scarblac 3 days ago 0 replies      
At work, I use what work uses -- currently Phabricator. So it goes.

For personal life, I have lots of old things in mails in Gmail (also notes in mails to self), scan paper administration type things and put them in a password protected ZIP in Dropbox, plan books to read on Goodreads, store contact info on my phone, chess games in Scid and other than that I rely on memory.

ofcapl_ 3 days ago 0 replies      
I'm using mostly my e-mail (I was into "inbox zero" before it was a thing to be honest). I have couple dedicated folders for archiving tasks etc. If I have something in my main inbox - it means that it is related to some task that is not finished (and it motivates me to finish it). Normally I have 0-5 messages in my inbox.
ivm 3 days ago 0 replies      
Scapple[0] for non-linear todo lists and overall thinking, MoinMoin[1] stored in Dropbox for keeping information on each topic.

[0]: https://www.literatureandlatte.com/scapple.php

[1]: https://moinmo.in/

blindluke 3 days ago 0 replies      
> life/work (...) in an integrated way?

I like to keep them separate.

A Wiki (http://dynalon.github.io/mdwiki/#!index.md) works great for my work related stuff, while org-mode (http://orgmode.org/) works for everything else.

themoonbus 3 days ago 0 replies      
* Evernote for web articles I find interesting (I love the web clipper), and for random notes

* Sometimes Google Keep for other random notes.

* Wunderlist for long term todos

* Apple Reminders for "remember the milk" type reminders

* Trello for work & personal projects

* Mint for budgeting

* Google calendar for calendar things

* Dropbox for cloud photo storage from my phone (may switch to Google photos at some point)

* Backblaze for offsite backup

aszantu 3 days ago 0 replies      
I have a box on my desk for Ideas, I use a calendar for appointments, since most of my work is just learning how to draw certain things that's something I just do without any system. I use anchors everywhere - eg. instead of to do listing them, I put items somewhere where I have to take them with me next time I leave the room
williadc 3 days ago 1 reply      
OneNote + Outlook works okay for what you're asking, but I have a hard time sticking with it because the interface isn't well-refined.

I like OneNote a lot more than I like Outlook, but the integration is reasonably good. You can create tasks from OneNote that give you reminders in Outlook, which link back to the rich-text "source material."

aethertron 3 days ago 0 replies      
My brain.

Supplemented by

 * Dropbox, for text files and code. To be replaced. * recently, Google Docs, used as an ad-hoc wiki. * Google keep for random 'check this out later' notes * Pinboard, for web bookmarks.
I want to develop a better hypertext system for notes, drafts and essays.

max_ 3 days ago 0 replies      
alinspired 2 days ago 0 replies      
OneNote (both offline and synced) and https://github.com/greggigon/my-personal-kanban-server
unixhero 2 days ago 0 replies      
I use a personal mediawiki for large scale bodies of knowledge, like my academical studies, computing knowledge and such.

Other than that, Simplenote for notetaking on web, android.

Lastly Google Drive is heavily used for the rest.

akerro 3 days ago 0 replies      
I have nextCloud with Calendar, Contacts and Tasks plugins. I have my meetings, schedules, todo-lists. It contains a lot of different types of lists, like washing, shopping, todo, list of ideas, contact birthdays, I've go dozens of it. It really works, I have reminders, notes, scheduling, tasks, progress meters.

I sync most important files between 3-5 devices with Syncthing. Devices are small and portable, 2x laptop, raspberry pi, netbook, I'm going to replace it with external drive connected to my Omnia Turris soon.

I have a few external drives with photos, music, films I liked, everything is evaporating online, torrent trackers are disappearing, content on Netflix is expensive and getting worse and worse, so I 'data-hoard' everything and backup at least twice once per month.

Like a year ago I opened a spredhseet where I log all my bills and it works for me as financial database, ~20 categories of expenses, each has some subcategories.

 * Kanban boards Yellow sticky notes on a fridge.

the_jp 3 days ago 1 reply      
Wunderlist was a gamechanger for me:https://www.wunderlist.com

Still looking for an optimal solution for calendar though, and other information I keep in Dropbox, iCloud notes and on paper lists.

steaminghacker 3 days ago 0 replies      
I used clouds to store files and my own app to store notes and calendars. Im thinking of open sourcing my app for the benefit of others. http://lexiy.com
hammock 3 days ago 2 replies      
You forgot:

 * Google
Basically I give everything over to them and rely on their suite of services. It has worked out really well actually. And in fact isn't it their mission to organize the world's information?

astrostl 3 days ago 0 replies      
https://culturedcode.com/things/ is the best, or least-worst, that I've ever used in terms of simplicity + power.
pavs 3 days ago 0 replies      

 * Asciidoctor - for Notes, snippets, documents, Projects. * SublimeText + Material Theme + Plantasks for daily to do and journal. (synced through dropbox) * Wunderlist - For grocery shopping list

Iv 2 days ago 0 replies      
I have an A3 sheet of paper where I note my sheet. When it is full, I copy the parts that are still relevant on a new sheet.
flarco 3 days ago 0 replies      


Markdown text!

Unlimited hierarchy

Unlimited list items

Printable checklists

Due dates

Tags (colored, private, public)

Search and filtering

Focus (hoist)


Colors (priorities)


List style

Word count

SticksAndBreaks 3 days ago 0 replies      
I have a recursive folder for everything that did catch my interest for every year. It could be a git repository, but its neat to be able to search the pile of a month.

Its nothing fency.

thallukrish 3 days ago 0 replies      
Dont try to answer this question when it comes up. I have spent a lot of time personally, developed software (prototypes) and figured out that this is a holy grail.
cryptomango 2 days ago 0 replies      
apple's notes app - I just breakdown notes into 3 segments -> Learning, Task-List, and Finance.

My task-list is broken down into times and days like:Task ListAM - morningMD - middayPM - afternoonN - evening

Oct 25 AM - send email for x

type0 3 days ago 0 replies      
Different tools depending on the context

* Emacs Orgmode

* nvPy (https://github.com/cpbotha/nvpy)

* Asciidoctor files

* Gnumeric

schizoidboy 3 days ago 0 replies      
I created an app for this: https://myplaceonline.com/
anton_a 3 days ago 0 replies      
I've builded artsembler.com to organize information; Trello for job; Pocker for junk; oh, also, keepassx for sensitive data;

that's all

iwintermute 3 days ago 0 replies      
Camlistore anyone?
ozzmotik 3 days ago 0 replies      
i throw it in a pile in my mind and usually forget entirely about it. probably not a helpful practice, and definitely has some influence on why my life is the way it is, but that's what I do
im_dario 3 days ago 1 reply      
Evernote + Calendar + E-mail. Calendar and e-mail both provided by Fastmail.
nagarjun 3 days ago 0 replies      
I think it's fair to say that there isn't a single tool that can satisfy all your needs. I'm meticulously organized but I doubt I can get anything done with just a Wiki or any other tool. You also have to remember that in many cases, staying organized also means collaborating with other people who may not share the same opinion as you about various tools.

It took me a long time to find the right mix of tools that are ideal for my specific workflow. These are the tools I mostly rely on now:

- Outlook.com (with custom domain) for my personal email. I find Outlook's 'Sweep' feature a lot more feature rich than Gmail's filters. I have rules that automatically move newsletters over 3 days old to archive and then delete unnecessary emails over 10 days old automatically.

- I've grown to like Wunderlist a lot for personal tasks. It has its limitations but it gets the job done well. I don't bother with many folders etc. I just throw everything in the inbox and add due dates to it. Inbox is sorted by due date. Works great for me. Also, it integrates well with Outlook.

- Evernote is where is store anything that's remotely relevant to me. Again, I don't bother with multiple notebooks. I have 2 main notebooks - Inbox and Cabinet. All notes start in Inbox. When they are no longer needed for my day to day work, they are moved to Cabinet. All notes are meticulously organized with tags. I am contemplating having a 3rd notebook called Library (offline notebook) with all my favorite online articles tagged by topic. This might work better than a Wiki to be honest. I also use their browser extensions a LOT.

- I use aText snippets inside Evernote to log call notes, meeting notes etc. using a standard format. I have quite a few other snippets that I use in other applications as well.

- All my favorite articles are in Pocket

- All my personal files are on OneDrive. Work files are on Google Drive (it's easier to collaborate on Google because everyone I know uses Gmail / Google Apps).

- Work tasks are on Trello

- Photos automatically organized on Google Photos

- My code editor (Visual Studio Code) settings are automatically backed up on GitHub Gist using https://marketplace.visualstudio.com/items?itemName=Shan.cod...

I also use a few other tools occasionally but mostly rely on these for everything. Like most people, I wanted one tool to fit all my needs but I came to accept that it's just not possible considering the complex needs of each function. You might not think about it but, task management in itself is more than just a simple list of to-dos that requires a lot of programming to be done right. Stop trying to find a one-size fits all tool. Leverage multiple tools and integrate them together. For instance, Evernote talks to Gmail through a browser extension so you can always save an important email easily. You can also create more complex workflows using IFTTT. That would be the best way to organize yourself.

DeveloperPanda 3 days ago 1 reply      
I use Wunderlist for ToDos.

Rest of the info I store in .txt files in a folder.

I am not a busy man :)

pawelkomarnicki 3 days ago 0 replies      
I use Google ecosystem (Reminders, Inbox, Keep, Drive)
vowelless 3 days ago 0 replies      
Doit.im GTD

Google Calendar

Evernote (I might be way too dependent on this)

BeetleB 3 days ago 0 replies      
Wrote in a thread yesterday:

Over the years I've tried many planning methods, with very low success.

I tried GTD for 7 years before declaring it a failure. It does have some good ideas that I still use, but the TODO management didn't work for me. I think it'll work only for people who have fewer goals than I do. It doesn't handle large lists very well.

Some things I kept from it:

1. Filing cabinet - Instantly useful from day 1.

2. Calendars are only for hard deadlines. Don't put stuff in there that you merely want to do. I know this is the opposite of the submission here. For me, planning everything in the calendar, including things I could ignore, led to a mess. Keep it for things you really cannot ignore.

In general, any obsessive time based planning like this submission fails for me. GTD is not time based. I prefer planning my tasks for the week, not for the hour.

I like the idea behind Kanban, but I do not think it fits most of our personal lives. Very good for certain work environments, though.

Pomodoro technique: It's good, but not really for task management. It's just a good technique to stay focused. Worked for a few months until I got used to it. Now it does not keep me focused and I can easily get distracted by the web, etc.

These days I'm trying this:


I think it works better than GTD, and fills the gaps in it. If you do not want to buy the book, a condensed, down to Earth version is available as the 1 Minute Todo List:


Personally, I feel the book is better than the PDF at explaining the rationale behind the 1 minute todo list. Reading it was very calming. It explained all the problems I had had with GTD and similar techniques.

Basic ideas:

1. If you cannot examine your todo list inside of a minute, it is too long. So spend a lot of effort ensuring your daily todo list is not long.

2. Urgency and importance are not the same. We're hard wired for focusing on urgency, so do not try to make a TODO list purely based on importance.

3. Every week, identify everything that must be done in the next 10 days and put it on your list that you'll examine daily. Things you decide not to do in the next 10 days, keep in your "list to examine weekly".

4. Every day, multiple times of the day, look at the short list and do tasks from among them. If new tasks come in, add them, but keep the list short (no more than 20-25 items). If your list is getting too long, identify things to move to the "list to examine weekly" and get them out of the way.

5. If something needs to be done today, put it on the top of your list!

6. You'll also have "the list to examine monthly" as well as quarterly.

Very simple idea - works a bit better than GTD.

I think my biggest problem is that I need to reduce the goals in my life and focus on only a few. I have more goals than time in my life, and I keep jumping from one to the other. No task management system will work until I do this. Tough decisions need to be made!

xZhan3 3 days ago 0 replies      
* Google docs

* Google Calender

* Wunderlist for task today (life and work)

Ixiaus 3 days ago 0 replies      
Emacs and org-mode.
lawpoop 2 days ago 0 replies      
brudgers 3 days ago 0 replies      
I don't.
PaulHoule 3 days ago 1 reply      
Ask HN: Is it better to be good at many things or great at one thing?
105 points by matonias  2 days ago   106 comments top 51
BenoitP 2 days ago 4 replies      
To quote from the Valve Handbook [1]:

> We value T-shaped people. That is, people who are both generalists (highly skilled at a broad set of valuable thingsthe top of the T) and also experts (among the best in their field within a narrow disciplinethe vertical leg of the T). This recipe is important for success at Valve. We often have to pass on people who are very strong generalists without expertise, or vice versa. An expert who is too narrow has difficulty collaborating. A generalist who doesnt go deep enough in a single area ends up on the margins, not really contributing as an individual.

Where you choose to be deep should be an area of interest to you and which the market values.

[1] http://www.valvesoftware.com/company/Valve_Handbook_LowRes.p...

dasmoth 2 days ago 5 replies      
> "A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects."

 -- Robert Heinlein
I've certainly always found being a generalist more satisfying, even if it isn't always what gets rewarded.

I wouldn't necessarily restrict this to "the digital world."

fao_ 2 days ago 2 replies      
Honestly? Try to learn as much about everything as you can. I mean every subject, every subfield. What I've found is each effort I made in one subject improved my efforts in others by a significant order of magnitude. With more knowledge you gain more ways of looking at the problems you're faced with and therefore can find more paths to solutions.

Each new piece of knowledge you learn will give you a better base from which to learn more, and slowly the amount you are able to learn will increase to help you cope with the load.

After a while you gain the ability to reduce a problem you're faced with down to other problems in other disciplines, then things start getting boring because you can already figure out a way to reduce this problem, etc. So at that point it's time to mix it up a little and refocus.

Another thing that should be noted is that you should always make sure that you are out of your depth with at least one thing you are studying. You can only really improve by pushing yourself. However remember that you cannot push yourself constantly, sometimes you need a break. So in doing this, you should be driven by your own interest.

What I have found is that I am not necessarily able to do everything at once, so I end up doing a rotation of things I find interesting at that moment. Eventually I'll either discard some topic or problem or such, because I don't find it interesting or I will find something new that I find more interesting. If things get stagnant, mix it up a little!

I've been doing this for approximately the last five years, and I think the payoffs have been great, and I have learned so much more than I think I would have otherwise. However I have nothing to compare to! So we cannot be sure =)

Do what interests you.

Unbeliever69 2 days ago 4 replies      
I am the consummate jack-of-all-trades. It is a disorder. And it irks me EVERY day that I'm not amazing at one single thing. I am SO envious of people that possess a single-minded focus and the older I get the more I regret not finding that singular passion. The problem is...I get bored with one thing. Or at least, I'm never crossed that painful membrane of boredom to find bliss in single mastery.
verbify 2 days ago 2 replies      
I recommend reading 'The Wealth of Nations'. As an economics textbook, it is fairly dated, but it makes the point that ten people with a specific specialization can do more than ten people all doing the same work at once. Therefore the value you can provide increases with specialization as you can be part of a team than can provide more.

My salary increased once I marketed myself as having a specific specialization, but the difficulty of finding a job increased too.

It is a basic application of supply vs demand. As, say, a PHP developer, you're competing with millions of other PHP developers around the world. There are plenty of jobs, but there are also plenty of people who are competing with you, driving your price downwards.

If you narrow it down to knowing a lot about a very specific framework or PHP system - for example, you know a lot about Laravel or Drupal, then you're competing with fewer people, and people are willing to pay more for an expert, but there are also fewer potential jobs.

There's also an associated risk. If you specialize in Laravel and Laravel goes out of style, you will have to remarket yourself as a PHP dev again... Some people specialized intensely in Microsoft Silverlight, and they ended up like this - http://www.commitstrip.com/en/2015/07/28/betting-on-the-righ... (it's not a total loss, as some programming paradigms work across languages). With the risk comes increased reward.

highfestiva 2 days ago 2 replies      
An expert without basic generalist know-how is just ignorant. An expert in only a single field is single-minded (think "SAP expert":). A generalist without expertise is just average.

Do both, as people always have. But start out a generalist to get an understanding of what is good to specialize in. Then pick 2, 3, 4 diverse areas to home in on.

T-A 2 days ago 3 replies      
Wouldn't you know it, it's best to be both: https://en.wikipedia.org/wiki/T-shaped_skills
dilemma 2 days ago 3 replies      
To be an entrepreneur you need to know a little about a lot of things.

To be employed, you'll do better as a specialist. If you pick the right specialization.

SixSigma 2 days ago 3 replies      
Me: 30 years professional programming

Certified AutoCAD technician

Certified TIG Welder

Degree in Supply Chain Management

Certified Bicycle Wheel Builder


Wood Turner

Proficient in 3D Modelling

Launched an ISP in 1995 that is still going

Project leader for a charity market garden supplying produce to a food bank

Assistant director / Assistant Producer of a feature film released on DVD (you can buy it on Amazon)

Producer of 4 music videos that have appeared on MTV

Made most of my own furniture from scratch - bed, table, freestanding kitchen unit, chairs

Was resident VJ at a successful rave series for 5 years

Appeared in stage plays for paying public

Qualified scuba diver

Arrested twice on TV on environmental protests

Occasional data analyst for a Superbike racing team at the national level

This isn't even my final form & this list is incomplete

Live life, box sets are for the dead to get buried in.

JohnBooty 2 days ago 1 reply      
Well, I'm going to cheat.

Be somewhere between "mediocre and good" at many things, and be really good at one or two things. If you can be great at one or two things, that is nice, but not strictly necessary.

There's a lot to be said for generalists, or "T-shaped" people. Every single project requires a large breadth of skills all up and down the stack... and a lot of moving pieces (client, server, markup, JS, CSS, blah blah blah) that work together.

There is a place for specialists, too. In fact, we need them to make the world go 'round. But... there aren't as many of those places.

Here's a real-world example. I literally just finished troubleshooting this issue. Finding the bug and developing a fix involved (1) our iOS client (2) our React web client (3) our server-side auth, implemented in Rails (4) a messaging library with both client and server components (5) some other bullshit I can't even remember at this point.

I'm not the best at any of those things. I'm barely even good at them. Honestly, I don't even fully understand the auth fix that our brilliant (and I don't mean that sarcastically) programmer implemented. But I understood enough of those moving pieces to isolate the problem and get things into his hands.

It'd be really fucking great if I was the world's leading iOS developer or whatever, but if that's all I knew, this issue wouldn't have been fixed.

trentmb 2 days ago 1 reply      
Become very good (top 25%) at two or more things.


distracted_boy 2 days ago 1 reply      
I think having good grasp in different domains and tools can be good for you both career wise and for your own sake (entrepreneurship, creativity etc). But it can also be a disadvantage depending on where you work.

When I first graduated from the university (at 23), I got a job as an IT support guy in a growing company (80+ employees at the time). I was the only IT support and my job was to help people with their issues and maintain the IT infrastructure. I managed to solve all types of issues which I guess people started to recognise. This was fine. However, since I also knew programming, my managers wanted me to help out on development (PHP), to ease the load on the developers. As time went on I became better with our framework and started to get more more complex programming assignments, while still being IT-support. For me this became a real struggle, completing programming tasks on time, maintaining IT infrastructure (servers, network, buying hardware, phone calls) and helping people with their issues. Somehow I managed, which my managers recognised (I assume, and hope), so I got additional assignments regarding "Big Data", basically get information, store it, connect the data with other data sources and so on.

At the end I was doing everything with IT. Data science, development, IT support, system administration and more. The reason it become like this, at least what I think, is because I had a sufficient grasp on most domains and tools so I just continued to get more stuff to do. When I finally quit, I actually realised that I was not feeling that great. I could feel the stress inside me slowly diminish.

mcv 2 days ago 0 replies      
Both have their value. Personally I prefer broad over deep, but that's me. You need to figure out what works best for you.

Deep has the advantage that when specialists are in demand, you're really in demand. It's good to have someone on the team who knows absolutely everything about the thing you do. The downside is that when technology or your career moves on, you know nothing. You're stuck doing that one thing, and may have a harder time getting into something else.

And broadness has a specialization of its own. Knowing multiple things is particularly valuable if you know how to connect those things. If you can develop front-end with an eye on what's easier for the back-end, if you can design the graphics that you will need, rather than having to wait for someone else to get around to it. Knowing different unconnected things is less valuable, but even there you may find unexpected connections. But for the deep technical stuff, you may find that you'll have to ask a real expert.

leonroy 2 days ago 0 replies      
This'll sound like a cop out but it really depends. Are you going into academia? If so it takes years of specialization to get good enough to make a meaningful contribution in the form of innovative and good quality research.

Are you planning on going into startups? In which case jack of all trades does very nicely!

The key is to be very good at some things but to also keep your eyes open and learn things outside your comfort zone - you never know where your new found knowledge can take you and often times it can make you better at whatever you chose to specialize in.

So senior architects who write APIs - for fucks sake (showing my background here!) - write the prototype client library - it will improve your API design skills.

Backend devs should write a front end or two or at least do some pair programming with the front end guys.

Bottom line - be very good at some things - but be open to learning new things and getting out of your comfort zone.

JoelMcCracken 1 day ago 0 replies      
More food for thought:




Personally, I like having a variety of skills. I want to be able to dip in anywhere on a project and be productive.

You'll naturally have focuses, or drips of paint, which I see is referenced in another post. Your focus really can only be on one thing at a time, and presumably you're not just learning for its own sake, you will be learning to accomplish some goal, which will drive the learning.

I'd rather work with a well-rounded engineer than one that is a poor communicator, tool user, etc but has very excellent skills in a very specific area.

YMMV. There is lots of value in having deep skill sets. There is also a difference between being a "dabbler"/"knowing enough to be dangerous" and being a competent engineer.

cies 2 days ago 0 replies      
For yourself: be good at many things. It will make you happy.

For your (potential) employer: be great at one thing, that they are willing to pay you a bundle for. Then use that money to buy all services you need to be happy.

agentgt 2 days ago 0 replies      
I'm somewhat reminded of some Einstein quotes (probably dubious but whatever):

"You ask me if I keep a notebook to record my great ideas. I've only ever had one."


"It's not that I'm so smart, it's just that I stay with problems longer."

At the same time:

"The important thing is not to stop questioning. Curiosity has its own reason for existing."


"I have no special talent. I am only passionately curious."

So I say follow your curiosity. If it wants to go deep go deep. If it wants to go broad go broad.

Franciscodr 2 days ago 0 replies      
Everybody goes to the general doctor, but want treatment from the specialist one.Usually a balanced combination between some general knowledge of many things and specialist in one thing is the best.Beware some people can be specialist in more than one thing but they are not typical, not the best always:https://www.ted.com/talks/emilie_wapnick_why_some_of_us_don_...
dsiegel2275 2 days ago 0 replies      
Scott Adams (yes, the Dilbert guy) wrote an insightful piece on career advice in his blog a few years ago. In it he asserts that to have an extraordinary career you should become very good at two different things.

I believe this article popped up on HN a couple of years back:


6DM 2 days ago 0 replies      
I would recommend you start with something you're the most curious about and/or find the most useful in your day job. It's like this, you're hired to bring value to a company so it should make you productive if you know it better. Get to know that well, seek out edge cases and new techniques. If you put your time into it, you will gain that knowledge fast.

The important part is not to stop when you're finished. Pick up the next thing and do the same. After you go through a few phases you will have enough general knowledge to apply in many areas.

In this way you start a specialist and become a generalist. You'll know fully well what your tools and technologies will be capable of and you will be able to give reasonably accurate estimates.

As far as I can tell, unless you have an eye for design, it's generally easier to start on the back end and move to the front end. This way you can be productive and are able to move between companies. Front-end is still changing a lot. But there are a lot of promising releases/tools in the works that are making getting started a lot easier.

tduk 2 days ago 0 replies      
Find something that is a good fit for you and in demand (preferably rising), avoid niche and fads. Be good at that one thing and a handful of directly related tech. Keep yourself informed about other stuff to the degree where you can hold an intelligent informed conversation and contribute to decisions. Use your spare time to satisfy intellectual itches. Expect periods of boredom in any job. Look after your spine.
HeyLaughingBoy 2 days ago 0 replies      
It really depends on what you want to do (i.e., your personal definition of "better")

Last time I was looking for a job, the recruiter came back to me and said "I can find lots of jobs that need your skills, but none that will pay the salary you want."

So we discussed what my skills were. I was looking for a SW dev job, but I have degrees & experience in EE, SW, lots of time working with integrating SW, EE, and Mechanical motion control, more experience working with biochemistry and understanding how various physical movements can affect the way a reaction proceeds, and the repeatability, etc. of the output.

Finally she says, "hmmm, you're really a Systems engineer with a Software engineer title." Then a new set of job opportunities (that wanted to pay what I wanted to be paid) showed up.

And somehow I ended up taking a position as a software engineer/Manager... go figure.

xiaoma 2 days ago 0 replies      
Professionally it's far better to be great at one thing (or a clump of related things). The market doesn't if your skills are kind of close to a professionally marketable level in many areas. On the other hand, it generously rewards those who are the best at any task people care to pay for. Find your strongest comparative advantage and milk it for everything you can. If you're good at and bad at writing, then be a musician, allow your writing to remain horrible and work with horrible musicians who can write.

In the personal domain, the situation is the opposite. It's just not possible to outsource being healthy, financially sensible, romantic or a good friend to someone else. If you're really struggling with one of those areas of life, it's worth it to work on fixing up your weaknesses rather than just further developing your strengths.

Jaruzel 2 days ago 0 replies      
Over a 25 year career I've worked on most key Microsoft technologies, but started out my work life as a Sys Admin for DEC VAXs using VMS. I'm also conversant with Linux, and can pretty much pick up anything IT orientated quite easily - I can design and build almost anything if I put my mind to it.

I see myself as an IT generalist, but in the workplace I have to specialize. Currently I focus on making Single Identities work across systems for large Corporates. It's quite niche, and at times monotonous work (the design is pretty much the same wherever you go), however in order to be GOOD at whichever specialism I'm pitching at the time I heavily draw on the cross knowledge I've gained over the years. This extra knowledge has ended up being invaluable in separating myself from the herd in the recruitment marketplace.

So in short. Early on you should generalize and learn as much about stuff that interests you; later on (10+ years) start to specialize based your preferences (or mortgage size, or whatever).

cousin_it 2 days ago 0 replies      
The most successful people are often specialists, but that's because they took a high-risk bet and won. To maximize your average success (rather than chance of runaway success), it seems more efficient to be a generalist, due to diminishing returns from any single skill. Just take care to be actually good at many things, not average at many things.
p333347 2 days ago 1 reply      
Be it web application development in specific, or software engineering in general, or even in life itself, I'd say its much better to be good at many things than great at one thing. For one, it makes a person self sufficient and independent. Assuming one is a curious autodidact, one can always improve or learn things that they aren't good at yet. Next, it sort of gives you a perspective from various points that makes you appreciate things better. Finally, it is a humbling experience (which is good in life) as it makes you realize how much there is to learn - the more you know things the more you know you know nothing effect. Of course, one must not get perturbed when derided as "jack of all master of none". On the flip side, one must also not go around town calling oneself a polymath or a renaissance man - those days are over, at least with established fields of knowledge - as it would be equally ridiculous.
scardine 2 days ago 1 reply      
In consulting/freelancing it is better to know many things, but market yourself as a specialist instead of a generalist.
perlgeek 2 days ago 0 replies      
If you want to build a reputation for yourself, it is much easier in a small niche. It's easier to be know as "the" guy who does awesome, interactive audio in D3.js (just sputtering stuff here) than to build a reputation as a "the" awesome frontend developer.

Once you have your small niche in a firm grip, you can expand outwards.

teekert 2 days ago 0 replies      
Depends on your wishes, I myself am a biochemist moved into molecular biology moved into biophysics moved into micro-fluidics moved into data-analysis.

Now I'm a person that talks to many specialists and brings ideas together to create new research paths to go into. I talk a lot, I write a lot and do some programming. According to tests I'm an extroverted person with a short attention span who is motivated by frequent changes. My current position requires this of me.

If you prefer to just focus on getting a single, (complex) job done, introverted, away from other people, you're better of specializing imho. Me, I get new ideas by talking with others and can enjoy meetings. Many of my colleagues can't, they just want to get their current task done ASAP.

collyw 2 days ago 0 replies      
Focus on a few things early then narrow it down to the things you prefer (or make you more employable) as your career progresses. The concept of a T shaped developer seemed popular a couple of years back (in blog posts at least).
TheLarch 2 days ago 0 replies      
"I fear not the man who has practiced 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times."--Bruce Lee

I am not sure if this submission is tongue in cheek or not.

fatdog 2 days ago 0 replies      
When you truly master something, the understanding of mastery is a surprisingly portable skill.

It can make you seem like a generalist, when in fact you are just a transcendent specialist.

anilgulecha 2 days ago 0 replies      
2 complimentary skills give you the most bang for your buck. Front end + photoshop, or backend + systems design. (You could also find a complimentary skill that isn't technical.)
eranation 2 days ago 0 replies      
I follow the principle of trying to be (and hire) T shaped people. Wide generalist knowledge (knows a little of everythin) but one topic where they go deep. You can be specializing in backend programming but I would expect you to be able to hack a quick front end fix. You can't get away without the minimum of basic HTML, CSS, JavaScript, SQL and Linux, you also must know basics of security (CSRF, XSS, SQLI etc). Then you can go deep on anything you want.
tugberkk 2 days ago 0 replies      
My recommendation is personal only, and does not include any "business-wise" suggestions. I would say being good in different things is better. This brings a simple problem tho, you are going to forget what you are not using. But, "learning" is an experience and a good one. So I would say learning and knowing a good chunk of any/everything will help you even in specializing.
ahmetyas01 2 days ago 0 replies      
Be good at what you do and know a little from everything = Good CEOBe good at what you do = Great EmployeeKnow a little from everything = World wide Loser.
id122015 1 day ago 0 replies      
If you choose one thing, choose politics, because no matter what a genius you are, the HR department has the other kind of reason.Social Justice Warriors, you name it..
jasonkostempski 2 days ago 0 replies      
"What's the secret to getting in? I can't tell you. You have to find out for yourself."
cyanbane 2 days ago 0 replies      
There is going to be a comment on this that is really good from someone who has spent a lot of life thinking on this topic. You will also probably be able to aggregate a whole lot of opinions from people who may think about this every now and then. Which do you think will be more informative?
pm24601 2 days ago 0 replies      
I think the key is to get past the "mediocre/o.k." skill level .

The problem with going deep is picking the right discipline. Since you may pick wrong initially, going broad first allows a chance to pivot to a different skill to go deep on.

The first skill is the ability to learn in a fast organized manner.

cauterized 2 days ago 0 replies      
That depends on what your goals are and what interests you.

There are things only specialists can do and things only generalists can do.

There are people who are equally interested in a lot of things and people who are particularly fascinated by a single topic.

Which are you?

danieltillett 2 days ago 1 reply      
I have noticed that the world doesnt work like this and talent is very unevenly distributed - those people great at one thing seem to be great at lots of other things.

Extreme specialisation seems to be correlated with unhappiness so it might be better to be good at many things if you want to have a happy life.

cerrelio 2 days ago 0 replies      
Either/or. Just care enough to be good at anything at all. Additionally, be good at something that doesn't involve work skills. Work isn't everything.
MollyR 1 day ago 0 replies      
Most places calling me about jobs want a full stack developer.
aj_nikhil 2 days ago 0 replies      
Start with many things and keep on doing them honestly and humbly.. sooner or later you will become master in few ...
psadri 2 days ago 0 replies      
It's even better to be able to become good at things as circumstances demand them.
jkingsbery 2 days ago 0 replies      
I've known successful people that have done both.
programminggeek 2 days ago 0 replies      
mirekrusin 2 days ago 0 replies      
Is the sum of small numbers greater than a large number?
nullundefined 1 day ago 0 replies      
It doesn't matter if you have amazing depth in XYZ or you know about many things, no one cares and in one year all your knowledge will most likely be obsolete.

If you're going to "learn" something, make it universal. Learn to communicate (written and verbal), make friends, have experiences and learn to be empathetic and check your ego at the door.

The truth is, life is short and you will never master anything let alone become great in many things, so why try? What's so bad about being technically "decent" and exude the universal skills listed above? I'd hire that person any day.

khattam 1 day ago 0 replies      
You can't be good at many things, mostly because people who spend all their time doing one thing will outdo you; so at best you'll be mediocre at many things. At worst, you'll think you're good at all those things.

Be mediocre at many things and specialize to some extent on few things.

Ask HN: How to verify customer change of address for a defunct email address?
2 points by mingabunga  10 hours ago   5 comments top 4
arkitaip 9 hours ago 0 replies      
Start by sending an email (without any sensitive info) to the old account and see what happens.

Compare the IP address from when the account was created / last accessed with the one for the password reset request. IP addresses are easy to spoof though so even if the IP addresses match you should be very cautious.

If you have the user's physical address, you could send a letter with an authentication code.

kogir 4 hours ago 0 replies      
While I worked on HN I did this for a few users. I required that the account they wanted to update positively identify them (via comments they'd made, items in their profile, etc), and that they be able to prove they were the same person.

Definitely something we handled on a case by case basis and declined to do if we weren't comfortable.

pmontra 10 hours ago 1 reply      
You need information about him and cross check with what's available to you. If you only have name and email, sorry.
brudgers 6 hours ago 0 replies      
If it's a serious concern, then process the issue manually and figure out what is going on rather than trying to automate it. Handle it on a case by case basis.

Alternatively, there are many situations where a new email address could simply mean the site requires creating a new account.

Embedded linux device drivers
3 points by keeplight  11 hours ago   1 comment top
devnonymous 11 hours ago 0 replies      
HN is possibly not the best place to ask questions such as these. You'd probably get better answers and also be able to have a follow up discussion by posting this question to a osdev or Linux kernel related mailing list (search for osdev or kernel newbies or even the dev mailing list for the distro of choice).

All that said, to answer your question in brief, you have the right idea - even within the device driver layer you have various levels of abstraction. Whether you ultimately choose a certain level of abstraction is really specific to what you would like to do. If you find that an existing kernel module that provides a easy to work with interface via a device node, just make a userspace tool or library to suit your needs, if not, create your own kernel module.

Aks HN: How did you improve the quality of your code base?
6 points by splittingTimes  21 hours ago   5 comments top 5
avitzurel 20 hours ago 0 replies      
* Code review and care.* Always leave code in a better state than you arrived.

This project is big, it's definitely not your average webapp express node.js you see these days.

From my experience in projects this big with a big team, there's absolutely no better solution than reviewing code carefully and caring about quality.

I was in the same situation as a consultant a few years back and the rule to leave code better than you arrived at it is a real trigger to most people that respect what they do.

I'd say that the VP ENG should be involved in the process and set some rules for what is acceptable quality and what isn't.

One more thing

Everyone knows a smell, every single member of your team has some piece of code he/she saw that doesn't make sense.Keep a document with all of these and just make sure you scratch them off EVERY single day.

Stuff like: * User Creation is using LOCK on table_x and it shouldn't* Form submit code is too complex, need to be better* Extract component X into a microservice


If you go through a list like this and fix things one by one, you'll be better off in a short amount of time.

Don't try and take it all at once, create manageable consumable pieces that your team can relate to, understand and get behind.

Good luck

twunde 5 hours ago 0 replies      
The main business goals of code quality improvements are to 1) reduce the number of problems customers encounter thereby reducing customer support costs 2) reduce the amount of unplanned work/firefighting engineers do and 3) increase the pace of innovation. Therefore along with code metrics you should be tying these quality changes out to business metrics such as number of customer-filed bugs per a month, number of customer support calls a month, etc. This should provide validation to code quality improvements, and give you a way to sell further improvements to management. Also keep in mind that there are non-technical ways to improve IT efficiency (improve project management, improve release management, improve testing etc)

So how do you go about making code quality improvements:1) See if you can remove unused code/dependencies/features. Less code means less code to support, and faster compile and testing times. Look at metrics like code removed

2) Focus on the most problematic areas of the code and eliminate errors and bugs. If you can eliminate a significant source of unplanned work/firefighting, you'll have more time to spend on planning development instead of just reacting to work. These problematic areas are where tests will be most useful

3) Add static analyzers and linters to easily detect simple problems (like unused variables, style problems, problematic constructs such as if(foo = bar). As you develop your coding guidelines, implement the rules in these tools to automatically find these minor problems. This will allow your code reviews to focus on the big picture instead of nit-picky implementation details.

4) Do things to close the feedback loops for development. Consider running testing throughout the day. Maybe try to increase release cycles. Maybe add UX earlier in the cycle

hiperlink 13 hours ago 0 replies      
sethu-b 18 hours ago 0 replies      
In our company, we use community-edition of SonarQube to help improve Code Quality. SonarQube can help you setup different metrics and fail builds if they are not met via maven-sonar-plugin. The new SonarSource project has plugins for all the modern IDE's and does a quick analysis on the current file.
gravypod 17 hours ago 0 replies      
This might be difficult to do but can you explain your overall architecture design? What sorts of issues are you having? Where are the pain points?

Going from top to bottom:

> Our company builds a java openGL CAD/CAM application suite for windows desktops

If it's an application suite then, from my understanding, you'll be building a main set of libraries and then a set of tools that all use these libraries. Have you considered a hierarchical plugin design? Have a main application that starts and setups all of your main rendering and CAD/CAM magic. Then go from there to working out a simplest of APIs to what everything actually needs access too.

Your main application basically just manages UIs/drawing to an OpenGL port. From there you can load modules to do other things. If you abstract what is needed then each module should only need to define How a functionality is executed, not where and what a functionality should look like in the UI. For instance refactor your code to follow such a structure:

 Master UI System (Exposes: "Options", "Renderables", "Views") -> Drafting Plugin (Exposes: "Models", "Collision", "Faces") -> CAM Plugin (Exposes: "Routing Paths")
Master UI does not need to know anything about Design Plugin and CAM Plugin.

Drafting Plugin needs to know about Master UI but nothing about CAM Plugin.

CAM Plugin needs to know about Master UI and Drafting Plugin.

That's what I would try and do if this was a new project but this isn't one and uprooting your entire (or even any recognizable percentage of your code base) is unreasonable.

> We have a couple tens of million LOCs, with ~50 projects and 1000s of packages

If you've got that many packages then you might want to find out what sort of abstractions are being used, not working correctly, and remove them/replace them with simpler solutions. How much of these packages are filled with Interfaces/Abstract Classes/Implementations of interfaces

> After ~10 years of neglection we need a strategy to increase the code quality (lots of dependencies, feature envying inheritance hierarchies, spaghetti code, similar problem are solved in myriad ways, all that jazz).

One at a time:

> lots of dependencies

Slowly replace dependencies by either abstracting features further, replacing with new standard library features, or by implementing other solutions to the same problems. Every dependency is an added layer of complexity in my book so it's best to avoid this as much as possible.

> feature envying inheritance hierarchies

This comes as a side effect of not knowing what a level of abstraction is actually meant to be doing. Have a team meeting and ask what each team thinks the actual problems that are needing to be solved are. The people knee deep in crap will have a better idea of what's the correct or natural abstraction for these cases if the ones currently being used are unnatural. It may just be that the code base has had too many large scale changes or even just have had too many features pushed in at once (which for a CAM/CAD tool is definitely not unheard of, this is a very specialized and hard task)

> spaghetti code

Get some sort of static analyzer. I remember one group I worked with used Sonar. Also remember that the best code quality tool is a good agreed upon set of standards. Somethings that have worked for me on some group projects I've worked on has been: Avoid complicated constructors, always default a variable to final, avoid complicated logic statements always exit early rather then filter before in a for loop, use all the up-to-date constructs to aid with code clarity (try(stream), for(var:set), and more).

> similar problem are solved in myriad ways

If there is one problem that exists in two places this is an opportunity for you to pull the part out, abstract it, and use it as a library. This is a double edged sword since these two parts actually need to contain the same problems which some times is not the case.

Now to the nitty gritty:

> How do you measure code quality? How do you interpret the metrics?

(How many times does the code result in an error) * (The time in hours that it takes to debug the code).

Larger number is worse. Keep a notebook/log of these times, graph them, and use that as a map to decide what is worth refactoring. If a piece of code "just works" but looks ugly it can wait to be refactored if there is another piece of code that looks "visually appealing" while still causing daily side effects in the active development of the project.

> What are good tools for a windows/java/eclipse dev environment?

I've always managed ANT scripts for my group projects since they are very very cross platform. Maven works great but I'm not a fan of the complexity of install for non-linux users. Also check out IntellJ for built-in maven support.

> How do you act on the metrics and actually improve code quality?

Change your code by coming at it from a different perspective. If that perspective yielded a more promising piece of code (that is easier to understand, causes less side effects, and uses less external/non-standard functionality) then you keep it. A lot of my code I write is code I throw away. This is much harder to justify to business people but it's an important part of the process to sketch up what you think might work even if the attempts aren't always fruitful.

> Can you recommend any resources of success stories on how companies managed to increase code quality of a big, tangled system?

Check out the U.S. Digital Service for the only recent success story that comes to mind [1].

If anyone knew the secret sauce they wouldn't give it out for free. The ability to "Fix" all the "Broken" projects isn't an issue on the scales that we think they are. A large portion of all technology-related projects fail [0]. If anyone could prove they where able to reliably fix these issues they'd be billionaires over night.

[0] - http://www.zdnet.com/article/study-68-percent-of-it-projects...

[1] - http://www.theatlantic.com/technology/archive/2015/07/the-se...

Edit: Removed "What do you mean by thousands of packages?"

Looking forward to what you think of all this.

Ask HN: What good open source projects written in React that I can learn from?
267 points by GutenYe  2 days ago   70 comments top 47
rarrrrrr 2 days ago 1 reply      
Not sure just what you're looking for, but SpiderOak's Semaphor is a desktop/mobile end-to-end-encrypted Slack alternative where the presentation layer is React, and the client side app backend (networking, crypto, database) is Go. That keeps the React code focused and easy to follow.

Source is here: https://spideroak.com/solutions/semaphor/source

scrollaway 2 days ago 2 replies      
Plugging in our own :) A Hearthstone replay engine


Example: https://hsreplay.net/replay/rjUdp6iC5FcQmKGmLX35RA

emilong 2 days ago 1 reply      
This is a nice, non-trivial, but not too big project in react and redux:


praveenster 2 days ago 2 replies      
The new Wordpress frontend code seems to be utilizing React:



jacobjzhang 2 days ago 2 replies      
My buddy Jason and the Mozilla devtools team have been working on the next version of the Firefox debugger, written in React and Redux:


Open source FTW

yamalight 2 days ago 0 replies      
I'm currently building a React app while trying to explain how/what I do in weekly(-ish) videos. You can find the source code (along with links to videos) on github: https://github.com/yamalight/building-products-with-js
activatedgeek 2 days ago 0 replies      
FormidableLabs (https://github.com/FormidableLabs) is doing some very good work in the React ecosystem. Here are projects that I'm particularly excited about:

1. Spectacle (https://github.com/FormidableLabs/spectacle), Presentation Library

2. Victory (https://github.com/FormidableLabs/victory), Graphing Library

3. Radium (https://github.com/FormidableLabs/radium), Component Styling

niftich 2 days ago 1 reply      
I recommend 'debugger.html' [1] from Mozilla.

"debugger.html is a hackable debugger for modern times, built from the ground up using React and Redux. It is designed to be approachable, yet powerful. And it is engineered to be predictable, understandable, and testable.

Mozilla created this debugger for use in the Firefox Developer Tools."

[1] https://github.com/devtools-html/debugger.html

OmarIsmail 2 days ago 0 replies      
I highly recommend checking out React Toolbox [http://react-toolbox.com/#/]. It's a horrible name for what it is - but it's a Material Design implementation in React.

There are simple components, and then more complicated concepts like higher-order components and factories. It has very good documentation, and is under active development.

indexerror 2 days ago 1 reply      
I'll plug in my project here.

Work in progress: https://github.com/Cloud-CV/cvfy-frontend

It is a platform to build pipelines to showcase machine learning models on the web. You select input components, output components, and use the cvfy-lib python client to connect all these.

grinich 2 days ago 0 replies      
You might be interested in building React apps that support plugins safely: https://nylas.com/blog/react-plugins/

The code is also open source: http://github.com/nylas/n1

(I work at Nylas)

sAbakumoff 12 hours ago 0 replies      
Hi!Here is the top 100 of the most rated react apps in Github:https://airtable.com/shrB7DlRYXDlU23a6And the article that describes how I obtained this list:https://medium.com/@sAbakumoff/react-entourage-6d51e7df9944#...
caterama 2 days ago 0 replies      
ES6 React with react-router, server side rendering, and Webpack code splitting + tree shaking. It's based on the "huge-app" example from the react-router project.


jedireza 2 days ago 0 replies      
A website and user system starter. Server side is built with hapi.js. The front-end is built with React. Redux as the state container. Client side routing with React Router.



artellectual 2 days ago 0 replies      
I have a video series with source code, you can follow along if you want.


Source Code: https://github.com/codemy/invoiced-ui

fzaninotto 2 days ago 0 replies      
Admin-on-rest: Admin GUI for REST APIS, using react + redux + react-router + saga + material ui


Contains documentation and unit tests, plus a few neat react tricks (like a custom React-router Route component and an accumulator saga), documented there:

* http://marmelab.com/blog/2016/09/20/custom-react-router-comp...* http://marmelab.com/blog/2016/10/18/using-redux-saga-to-dedu...

rickhanlonii 2 days ago 0 replies      
We wrote slack-like app for reddit called Breaker and the front-end is written in React:

- http://breakerapp.com/r/breakerapp

- http://github.com/larvalabs/breaker

Cymen 2 days ago 0 replies      
If you're interested in component composition, react-bootstrap is a good one to look at for ideas:


They are also accepting of new contributors.

ehfeng 2 days ago 0 replies      
Sentry (https://github.com/getsentry/sentry) has a React frontend but it's a big enough project that it's less ideal for learning.
victorbinetruy 1 day ago 0 replies      
MASAS - "Make A Sound And Share" www.masas.fm


All I know is that it written in react and by what seems to be three, very passionate, brothers.

"MASAS.fm is going to be a platform on which all of an Artist's needs, from creating music, to getting it discovered, to selling it and playing at live events, can be met, for free. Thus eliminating the need for all the vicious middlemen that have placed themselves between Artists and their fans. Together, we can build that platform, one that will truly help all Artists, without ripping them off of their music rights!"


purephase 2 days ago 0 replies      
Metabase is written in React:https://github.com/metabase/metabase
whicks 2 days ago 0 replies      
I had this same question awhile back: https://news.ycombinator.com/item?id=12497202

Just leaving this here for reference and as a resource.

astockwell 2 days ago 1 reply      
Mattermost[1]: Open-source Slack alternative written in React and Go.

[1] https://www.mattermost.org

tbrock 2 days ago 0 replies      
parse-dashboard: https://github.com/ParsePlatform/parse-dashboard

It even has user interface guidelines for the components.

eg312 2 days ago 0 replies      
I don't know how much you can learn from it, but here is a react + three.js project I've done for testing: https://github.com/alexadam/bridges
boyter 2 days ago 0 replies      

A Guild Wars 2 Armory. Fairly impressive. You can view it live too https://gw2armory.com/

riledhel 2 days ago 0 replies      
For another type of application, you can check brave browser source code https://github.com/brave/browser-laptop
jwookie55 2 days ago 0 replies      
Ill plug our new project, Desklamp. Its a replacement for the Redux + React Router standard. These two just weren't built to work with each other and so take a lot of extra code. Desklamp solves this problem by delivering a single library that handles both state and routing.

check it out here https://github.com/desklamp-js/desklamp and feel free to make pull requests and submit issues.

good luck in your tech journey

hellothree23 2 days ago 0 replies      
danesparza 2 days ago 0 replies      
Facebook has some great tutorials and examples on their site: https://facebook.github.io/react/tutorial/tutorial.html

Also: I would highly recommend getting familiar with both npm and Babel/ES6/ES2015 -- even if you're not a node developer.

I found that understanding the tech was one thing, but when I actually started building my own projects I sought out community help with specific questions I had.

Have fun!

slig 2 days ago 0 replies      
I build this trivial SPA front end https://github.com/javascript-obfuscator/javascript-obfuscat... to a Node.js package.

demo here: https://javascriptobfuscator.herokuapp.com

It has just two reducers, uses redux-promise-middleware to make one ajax call, and uses Semantic-UI for the UI.

ryanluker 2 days ago 0 replies      
If you are looking for more of a learning project (and in typescript) I converted Wes bos' react tutorial series for my own learning http://www.github.com/ryanluker/typed-catch-of-the-day
cybermarkus1 2 days ago 0 replies      
I built my own react-cellar to learn react, redux, typescript, and so on.

GitHub: https://github.com/ayxos/react-cellarWeb: https://react-cellar.herokuapp.com/

jiji262 1 day ago 0 replies      
You can't miss this one:https://github.com/airbnb/react-dates

Provided by Airbnb.

goo 2 days ago 0 replies      
https://github.com/callemall/material-ui is a great collection of components -- there's perhaps some insight into how to make (and document!) reusable components, since the project is built to be a component library for others' use
umurkontaci 2 days ago 0 replies      
WordPress.com front end is written with React. It's one of the biggest React projects, and it is used in production. We are actively developing on GitHub and trying develop out in the open.


andy-shea 2 days ago 0 replies      
Octopush - A simple GUI for Capistrano built on React and Redux with server-side rendering


Buetol 2 days ago 0 replies      
Sentry is also a nice non-trivial one: https://github.com/getsentry/sentry/search?l=JSX
cellis 2 days ago 0 replies      
Sir_Cmpwn 2 days ago 0 replies      
I helped out a lot with this codebase, it's well on its way to becoming a production React SPA:


crashdown 2 days ago 0 replies      
I found this tutorial really really helpful: http://academy.plot.ly/#react
MicheleBertoli 2 days ago 0 replies      
nathantotten 2 days ago 0 replies      
We have a bunch of open source react apps in https://github.com/auth0-extensions
Novex 2 days ago 0 replies      
f8app - https://github.com/fbsamples/f8app

React Native, but same idea. There's also an excellent set of posts at http://makeitopen.com/ which run through how it was built and why.

It's responsible for a lot of my 'aha' moments about Flow type-checking and Redux.

Ask HN: Is there a reliable way to put Mac OS X on a non-Apple notebook computer?
25 points by obiefernandez  1 day ago   24 comments top 10
shaynesweeney 1 day ago 2 replies      
As a long time macOS developer and user I too went down this road and ended up pretty frustrated. Even when you get things working perfectly (tackling iCloud services, driver issues, custom boot options, etc...) you're left with an installation that feels static.

Updates are slower to roll-out to the hackintoshes, major OS upgrades can be quite a bit slower to come. This can include security fixes too.

I ended up installing Linux and never looked back. It turns out most of what I used on macOS was just the unix-like subsystem. Having Linux was just as good, if not better than being on macOS.

Of course this doesn't help if you're doing iOS development, or need to use Xcode. I've moved away, myself, but have talked to others who have used a Mac Mini as a build machine. You could also install OS X in a Virtual Machine under Linux and use it for development, which requires its own set of hacks but fewer.

Linux distributions I would recommend:

* Solus, I really like where this project is going and it's my daily driver now.

* Arch, allows/forces a truly custom setup, you end up learning a lot about your system, but might be too distracted with your system to get work done ;)

* Antergos, an Arch alternative w/ batteries included.

* elementary OS, it's the Linux distro made by the folks who loved macOS. It's beautiful and you might like it more than macOS itself.

runjake 1 day ago 0 replies      
Yeah, it works on a variety of models with variable levels of tinkering required. Compatibility should substantially improve in the coming months with these new Skylake Mac laptops.

For a better SNR than browsing Tonymacx86 forums, try https://reddit.com/r/hackintosh

informatimago 1 day ago 0 replies      
There is no legal way to do it.

The closest you can do, is to install Darwin (opensource), and GNUstep (opensource).

Then you can develop Openstep/Cocoa applications on your non-Apple laptop legally and in total freedom.

If you have customers who would want a MacOSX executable, you would then give them your sources, they would download Xcode, and they would compile them. This is why the GPL has been invented (or other licenses such as BSD, MIT, etc).

Now of course, GNUstep doesn't track the evolution of Apple Cocoa very closely. Your application will be compilable for MacOSX if you take some care to write it portably, and you won't be able to take advantage of Cocoa specific features, only the most vanilla and plain Openstep features. Depending on the kind of application, this may be more than enough.

LarryMade2 1 day ago 0 replies      
Long time Mac user here (done accelerators, clones, and hacks)

Save your sanity and money - you can get some nice specced refurbished/used MacBooks that can just run the latest Apple stuff for a good price and save a lot of frustration with foreign hardware issues now and down the road.

Things will "just work" and you will really appreciate it.

BoredDev 1 day ago 1 reply      
1. Linux install for unix goodness. 2. Dual boot Windows for when you need it.3. MacOS virtual machine. Alternatively, make it easier and vagrant it up:https://atlas.hashicorp.com/jhcook/boxes/osx-elcapitan-10.11

Doing the whole hackintosh thing has improved from previous years. Before it was an absolute nightmare. It's still a lot of pain. Just less. So you have that option as well. Just remember it doesn't play nice with all hardware and you will have to fiddle a lot. Every update you will have to do your research and pray to the god of moving bits that it's a smooth transition.

semajnekeerv 1 day ago 0 replies      

then choose your osx version...

hbcondo714 1 day ago 1 reply      
I used this virtual machine approach to try out the latest macOS on my surface 4:


mtmail 1 day ago 1 reply      
lathiat 1 day ago 1 reply      
Way? Yes. Legal? No. Reliable? So-so.
Ask HN: Help me pick out a weekend project.
12 points by whitepoplar  1 day ago   12 comments top 6
taprun 1 day ago 2 replies      
Here's a project for you: Let me input a list of small companies' career pages. Send me a daily email when a new job is added to one of those pages.
olegkikin 1 day ago 1 reply      
Both of your ideas exist.

Pretty much every mailing service will let you send plain text emails.

Google calendar allows email notification on events. You can also do Facebook group email notifications. There are many other services that have that.

Here's a free idea for you:

Deleted Wikipedia. Show me the stuff that got deleted (as in edited out) from a given article.

jlgaddis 22 hours ago 1 reply      
How about a basic CRUD application to manage virtual domains, virtual users, and virtual aliases for Dovecot/Postfix in a MySQL|PostgreSQL database? I could use something like this. :)
hug_h 1 day ago 0 replies      
An app to remember any longtime bet : I bet dner in a French restaurant than in 2020 the Russian team will have more golds medals than Usa . Then on august 2020 an email reminder is sent to the participant
besselheim 21 hours ago 0 replies      
An online hex editor. Probably could do this fully in the browser.
richerlariviere 22 hours ago 0 replies      
A CLI to manage Apache VirtualHosts inside Vagrant. I would use it.
Ask HN: Is Apple nuts for discontinuing 11 MBA?
16 points by mark_l_watson  1 day ago   11 comments top 4
itnAAnti 1 day ago 0 replies      
I previously used the 11" MBA as my dedicated "running around to meetings" machine, and basically just used Evernote and MS Office on it. When the new MacBook came out, I switched to it.

The keyboard on the MB takes some serious getting used to (actually, in the ~8 months that I used that computer, I never became fully used to the keyboard), but the screen and physical size of the MB was better than the MBA. (Of course, the processor was noticeably slower... so YMMV.)

So IMO, they did the right thing, there was too much overlap between models. The MB still needs to get faster and come down in price, but I do think it will be just as ubiquitous as the MBA within a few years.

I agree with others that the current line up is sorely lacking an affordable laptop, but that will likely change (slowly; hopefully) as manufacturing & component costs come down.

mark_l_watson 1 day ago 2 replies      
I bought my wife a 11" MBA this year, cost was $900. She didn't want me to buy it for her but I insisted.

Apple should have a mid priced laptop for casual users.

wmf 1 day ago 2 replies      
No, there was too much overlap between the 12", the Air, and the Pro. I guess the iPad Pro is now Apple's sub-$1,000 laptop.
DrNuke 1 day ago 0 replies      
Waiting eagerly for shit on a stick at $999!
Ask HN: What stretches can I do to prevent long term damage from sitting?
16 points by kilroy123  1 day ago   10 comments top 6
andrei_says_ 1 day ago 1 reply      
The best thing I've ever done is to not sit for as long as I used to. A convertible standing Desk allows me to switch and I do, all the time.

Iirc I read research showing that no physical activity can compensate for sitting. We need to sit less and move more often, something like every 20-30 min.

As for stretches I'd second physical therapy. For the pain I'd also recommend Feldenkrais as well as Yoga.

JSeymourATL 1 day ago 1 reply      
Recently started doing the Jefferson Curl after hearing about it on Tim Ferriss's podcast. Huge impact, my back began to improve right away > http://fourhourworkweek.com/2016/05/09/the-secrets-of-gymnas...
jankins 1 day ago 1 reply      
I would recommend seeing a physical therapist to get started instead of trying to put together s plan yourself, especially since you're already experiencing pain.

Based on my experience I'd also recommend seeing one in a private practice, not attached to a large hospital, but ymmv. Hospital centers I went to would only treat one thing at a time for insurance reasons even though I had two problems.

Anyway, I think good professional guidance will help you recover faster and more completely because they'll be able to identify problems, design solutions, and give you feedback & knowledge more effectively than if you DIY.

jabv 1 day ago 0 replies      
I suspect each person truly needs different supports.

I have fallen in love with the material from Eric Goodman. His company is called Foundation Training, and he has a lot of freebies on YouTube.

I would say, with no hyperbole, his simple exercises have changed the way I walk, stand, and move in general, and they have been the antidote to my hours at a desk.

Maybe it will be valuable for you!

Someone 1 day ago 0 replies      
Obviously: don't sit for very long periods of time.

Stand up and walk for a minute every fifteen to thirty minutes can help a lot, and also is an opportunity to reflect on the work you just did. Not typing isn't a synonym for not working.

Ask HN: What do you think of Lever's 50/50 men and women team sales pitch
4 points by bluesharpie  19 hours ago   7 comments top 7
wayn3 1 hour ago 0 replies      
I think they're explicitly advertising a 50/50 engineering team. At least that's the way I understand it. Announcing that you hire an appropriate amount of women in jobs where there's no shortage of women is even more laughably retarded.

Anyway, this is just as much a case of discrimination as not hiring women or not hiring men. Every time you make a hiring decision based on the sex/gender of the applicant or the aggregated sex/gender statistics of your team, you discriminate on the basis of sex/gender. Discrimination goes both ways. Hiring someone BECAUSE they're a "minority" is still discrimination. "To discriminate" is not a negative per s. It just means "to take something into account".

Advertising ones own federal offenses is kind of stupid.

Hiring women for the sake of hiring women is repulsive. Some people don't get it but its not easy for someone to cope with learning that they got hired because there was a quota to fill vs. a belief that they actually are the best for the job.

This company takes it a step further and just declares everyone quota fodder. Not just the occasional black guy or woman. Just everyone. Apply to lever and you roll a non-zero chance of being hired based on the fact that there was open quota for your specific set of tangibles.

fuqted 15 hours ago 0 replies      
It makes me think that, that statistic likely came at the expense of talent - on either side of the spectrum. Engineering is a good example. There are vastly more men than there are women. Would I expect this company to hire the best women? No. Meaning the company intentionally hired less talented engineers specifically because they were women.

Beyond being sexist, I just don't think that's what a company should be focusing on.

Even if the statistic didn't carry over to every department - which I get the feeling it doesn't - I still think that would be wrong.

With that selling point, it's not hard to see why their job ads are continually up.

awareBrah 2 hours ago 0 replies      
I wouldn't work there simply due to the fact that they advertise this. Not that it's a bad thing at all, it just shows that the company will have a culture that is very PC/SJW heavy and I'm honestly sick of it in this industry so I would stay away
laughfactory 13 hours ago 0 replies      
I personally don't care. When I look for future employers (as a male at least) I don't care how many women work there. I care about the work being done (is it interesting?), the team I'd be a part of (is it a happy team?), the compensation, etc. In short: I'm not sure who the sales pitch is intended for? Single men? Women who want to work in a less male-centric organization?
FT_intern 3 hours ago 0 replies      
It makes me think that they're sexist. The CS applicant pool is ~15-25% female. I would expect similar team compositions.
throw_away_777 10 hours ago 0 replies      
I always thought it was a weird thing to say, though it does grab your attention which might be what it is going for. But as a man I always assume this means that I wouldn't have a good chance of being hired by the company. I don't buy arguments that women applicants are on average more qualified than male applicants, my prior is that applicants should be roughly equal. Presumably the company gets more male applicants, so to maintain a 50/50 ratio they must reject a significantly higher fraction of male applicants than other companies do.
draw_down 19 hours ago 0 replies      
It makes me think no matter who they hire, they're going to throw off the balance!

Unless they hire in gendered pairs which would be... well, an interesting approach.

Ask HN: Helpful methods for debugging JavaScript / websites?
11 points by mgalka  1 day ago   3 comments top 2
astans 1 day ago 1 reply      
Chrome dev tools. Ctrl + Shift + i. Check out the docs, they are great.

- Conditional breakpoints!

- Avoid "Pause On Caught Exceptions" if you are working with date libraries... unless you blackbox them.

- Using the profiler to identify unknown bugs is effective sometimes. This can be initially overwhelming.

- Ctrl+p for fuzzy finding loaded resources.

- Get comfortable with Continue, Step Over, Step In and Step Out.

- $0-4 in the console store the value of the last selected nodes in the inspector. e.g $($0) would provide you with a jQuery wrapped node

- "Long Resume"

I also recommend you enable capturing async stacktraces and the setting which disables cache when the tools are open.

hbcondo714 1 day ago 0 replies      
I've used vorlon.js to debug web and Cordova / Ionic mobile apps.

"An open source, extensible, platform-agnostic tool for remotely debugging and testing your JavaScript. Powered by node.js and socket.io."


Why didn't Apple use Lightening vs. USB 3.0-C on iPhone 7?
13 points by noahmbarr  1 day ago   9 comments top 4
kaolinite 8 hours ago 0 replies      
Not saying that these are valid reasons however two that spring to mind are thickness (USB-C is fairly significantly thicker) and elegance (one could argue that Lightning is a more beautiful and slightly more pleasant to use connector).

In addition, Apple controls Lightning completely so when you buy an accessory that uses Lightning, as long as it isn't counterfeit, it has been tested by Apple and is guaranteed to work. They can't guarantee that with USB-C.

That said, it's an awkward situation. Overall I'd like USB-C on my phone however if they were going to do it, surely it would have been with the iPhone 7. It wouldn't be great if they announced it with the 7S after people had gone out and bought Lightning headphones.

ojm 1 day ago 3 replies      
The iPhone 7s can have it. Apple can do a massive launch, with the only difference being the charge port: now charge your MacBook and iPhone with the same charger! rapturous applause.

(I'd actually love it, I use a MacBook and a iPhone. One charger would be great).

stephenr 1 day ago 0 replies      
Given that they dropped space grey for black, one could argue that apple actually used darkening on the iPhone 7.

Thankyou thankyou.

ra 1 day ago 0 replies      
A better question is why even use lightening?

IMHO it's an anti-feature not to use USB-C on iPhone.

Ask HN: T-shirt gift idea for a friendly sysadmin?
5 points by omidfi  1 day ago   7 comments top 6
zero_by_divide 1 day ago 0 replies      
Generally speaking, you can't go wrong with gift cards. Amazon, ThinkGeek, whatever. Or, y'know, a nice thank-you card. "Hey, you're awesome, thank you for everything you've done for me."
cafard 1 day ago 0 replies      
It seems to me that Think Geek has some good ones, e.g. a "bow before me, for I am root." Or he might enjoy some of the "O'Really Associates" tee shirts.
introvertmac 1 day ago 0 replies      
How about this? "we believe in god, rest we authenticate"
eboyjr 1 day ago 0 replies      
Humble you say? "The sysadmin giveth and the sysadmin taketh away."
jbpetersen 1 day ago 1 reply      
Custom printed: #1 sudo

The joke is it's a bash comment.

ohgh1ieD 1 day ago 0 replies      
sudo make me a sandwich?
Ask HN: How would hiring react to high profile/notorious company on resume?
4 points by seannaM  22 hours ago   1 comment top
shostack 22 hours ago 0 replies      
Totally depends on the role and circumstances.

Were you a worker bee in the back office that had nothing to do with the scandal? You should be fine, and will have a good story about your ethics for why you are seeking other employment.

Were you a high-ranking employee with direct responsibility for any of the factors causing them to be in the current mess? You might have a tougher time because you'll need to explain yourself.

These are also things that you might want to consider tackling in a cover letter.

Ask HN: How to go from zero knowledge to employable as a junior developer?
3 points by soneca  1 day ago   16 comments top 5
Jtsummers 23 hours ago 0 replies      
I'm less familiar with the world you're coming from, but I'll give a variation of the advice I've given before:

1) Maybe more than 4 months to be an employable junior developer, but certainly under a year if you're willing to put the time into it.

2) "Front-end development" is very broad. You could work for anyone making anything doing that. And that could easily be a feasible first step towards a career in development, especially as it'll give you paid opportunities to practice. But

3) You have 12 years of professional experience. Capitalize on it. Are there applications that would help in those niches? Are there solutions that could be provided? Maybe not an application, but the synthesis of several to create better workflows and environments for workers in non-profit project management/fundraising.

What were your pain points in your prior career(s)? What did you see organizations struggling with? Create solutions or find solutions to fill those needs, and then market them (you have a marketing background, should be helpful, and industry connections, even more important). If you aren't interested in doing a startup or consulting yourself, maybe look for existing companies that are trying to fill these needs.

EDIT: Also, for anyone else reading this, particularly from technical backgrounds in other engineering/science disciplines, I highly recommend considering that 3rd statement. You have a great breadth of technical knowledge, unless you just hate the field or have a true passion for something else, no reason to abandon it.

myinitialsaretk 1 day ago 1 reply      
Lets assume I am an engineer that has decided I want to transition my career and devote my career to helping non-profits because I will be professionally happier. What could I do to demonstrate to you my commitment and interest in this new career path?

Maybe I could show how much I care about the cause, by volunteering at an event. Or helping out running a fundraiser.

I'd ask yourself the same question for engineering.

I think a good answer would be something like: "I thought building cool web frontends was a really interesting problem, so I taught myself the basics (books, online courses, classes) and built (INSERT THING HERE) to build the kind of thing I would love to see in the world."

p333347 1 day ago 1 reply      
Stick to your specialty and scratch the programming itch as a hobby. If you get good at that hobby, see if you really want to be a professional dev and look for a job. If you get nothing you like start your own thing (your experience with startups might be handy here). I would wait at least a year to see if this is just an infatuation or deeper love. And while you are learning, pay special focus to algo and design, a bit more than knowing nifty things with popular frameworks in the language of your choice.
AvgNoogler 1 day ago 2 replies      
How do you know that you want to be a developer if you have 0 knowledge of software development? A lot of jobs require logical thinking and learning on the fly. That doesn't mean you'll enjoy all of them.

I'd say get your feet wet by learning Python and some basic algorithm knowledge first to see if you're actually interested in programming. Also, learn a lot before trying to Stack-Overflow your way to an app. That approach is exponentially harder the less you know about software development.

csallen 23 hours ago 2 replies      
I've taught three people to code from scratch (my brother and two friends from college). All were able to get junior-level jobs in the SF Bay Area within 6-12 months. All have since made significant progress in their careers.

To answer your questions:

1. Is it possible to do in 4 months? Certainly, but you will have to work your ass off, and also work very efficiently.

2. How is it possible? Work 60-70 hour weeks (easy if you love programming and can finance yourself without a job, hard otherwise), and have a super efficient curriculum.

3. What path should you take? I'll give you my advice below. To do so I'll have to make lots of assumptions about your situation, but here goes anyway:


- Avoid bootcamps. Assuming you're more motivated than the average person in your class, they will only slow you down. (One of my friends started a bootcamp against my advice, regretted it, and quit halfway through. The pace was too slow. Very few of the graduates got jobs afterwards.)

- Give up on being full-stack. Four months is not long enough. You will need to strategically cut corners, and this is a big one.

- Buy a Mac, ideally a MacBook Pro. Get one used if you have to. Don't try learning on a PC.

- Right off the bat, start using the Terminal for everything: downloading files, installing programs, opening programs, navigating the directories on your computer, copying files, deleting files, etc. When you don't know how to do something, Google it. It will be painful at first, but you will get good eventually, and it will save you pain later.

- In general, remember that learning new things (everything below) will often involve lots of pain and frustration, but push through it. Once you start to develop mastery in an area, it tends to get much more fun.

- When learning, you want to "see saw" between reading and doing. Too many people try to read and memorize everything, but that's impossible. Reading is just to orient yourself so you can figure out where to start. Doing is how you learn and remove confusion. Then you read some more to answer specific questions. Repeat.

- Start with HTML/CSS. Find cool website screenshots on Dribbble.com and try to build rough versions of them from scratch. Don't neglect to learn flexbox. Do this regularly for a cpl weeks and you'll get good.

- Meanwhile, learn basic programming. Use JavaScript. Remember to see saw. Read just enough to get the just, then dive in and practice. There are lots of algorithmic practice problems online, e.g. http://codingbat.com/java. Do hundreds of them until recursion, and looping, and writing functions, and solving basic algorithmic questions you find online is easy.

- When you are good with HTML/CSS and familiar with JS, it's time to combine the two. Learn about the DOM and learn about jQuery. You'll see how JS can make your pages interactive. Work on small projects, the first of which should be a portfolio that you can showcase your subsequent projects on. Use Git and GitHub for these projects.

- Continue reading about JavaScript. Read books on it. Learn the intermediate and advanced parts of the language. People will tell you to learn frameworks like Angular, Ember, React, etc. Ignore them. Even jQuery (which is much simpler) will be a bit much for you to handle and will seem like magic at first. You don't have time to dive too deep. This is just the price you pay for learning in 4 months. But that's okay, you can still get a job.

- When you do get a job, don't stop learning. Everyone I've taught stopped (or significantly slowed) their learning after landing their first job. They regretted it later and eventually resumed learning.

Ask HN: I can't find a First job, now what?
8 points by notMe888  1 day ago   13 comments top 4
laughfactory 14 hours ago 0 replies      
Yeah, I'd probably revisit HOW you're marketing yourself. Your hit rate should be much better than virtually 0 out of 100. Generally, from my 5 years of experience since college, if I'm not getting responses it's because I need to refine my resume, punch up my cover letter, or tweak my LinkedIn profile. In your case it will also be very advantageous to complete some of your open source projects. Working products is critical. Try to make sure that your repo is essentially a showcase for your abilities. If your repo is filled with unfinished stuff, or other crud then you'll want to clean it out and make it presentable. The other tip I picked up somewhere is to try and exercise your intelligence by determining who the hiring manager and/or HR representative is for the company, dig up their email, and email them your resume and cover letter directly. When you do this make sure you convey poise, and confidence (without being arrogant), and illustrate why you think you're a good fit for their position (without being overly verbose).

Good luck!

ggregoire 1 day ago 1 reply      
It's curious because all the companies in France are looking for developers. Specially in web development. What's your stack?

Since you have studied in France, I assume you have done one or several internships (usually 6 months) or even one or several years of apprenticeship (really common here in IT)?

If yes, did you try to get a job in the same company? Did you ask for references to your manager, your product owner, your team members, your CTO?

If no, you should start with an internship I think. Unfortunately, what your learn at school is rarely useful in your daily job. I don't know any company that hire candidates without some real xp.

notMe888 1 day ago 2 replies      
OP here: Just more information, I'm looking for jobs mostly in Europe (Since I have studied in France) but I require VISA sponsorship.

Which might be a factor in my situation.

anonymous_iam 1 day ago 0 replies      
Stay in India?
Founders talk
2 points by dre4311  1 day ago   4 comments top 4
fuqted 15 hours ago 0 replies      
You might want to niche down on that question.
olivercreashe 21 hours ago 0 replies      
Asking the right question
ak39 1 day ago 0 replies      
Finding a paying client
tedmiston 22 hours ago 0 replies      
       cached 29 October 2016 20:05:02 GMT