HNHacker News
TopNewBestAskShowJobs

djfm

414 karma · joined December 1, 2014

submissionscomments
djfm··on The Happiest People Don't Let Their Minds Wander, According to a Harvard Study
that's truely a good question
djfm··on The Happiest People Don't Let Their Minds Wander, According to a Harvard Study
Can I code a girlfriend?
djfm··on My Subconscious Is a Better Developer Than I Am
Personally I find serotonin reuptake inhibitors to be a great help solving some class of issues.
djfm··on My Subconscious Is a Better Developer Than I Am
Glad to see I'm not the only one to feel like this!

Sometimes when I'm working on something really hard I purposely go to sleep in order to keep thinking about the issue in my half-sleep, when the limit between conscious and unconscious thought starts to fade.

Then more often than not I wake up with an uncontrollable urge to implement a crazy solution that often happens to work.

I believe the credit is still mine, and the mind works in mysterious ways.

djfm··on Kotlin 1.0.5 is here
I make it a point never to use a for loop in JS. It's sometimes tricky but often leads to cleaner code.
djfm··on Functional Programs Are Imperative Pumpkins
Yeah, now this is a nice continuation to the conversation :)

I too have been mildly obsessed with the kind of thinking you're developing in your post - very nice article!

I've been very attracted to event-sourcing since I realized that now that React and redux have mostly solved the UI problem what remains to be solved is the problem of how to store our beautiful event-driven data.

EDIT: re-read your comment, felt the need to say that your "current view" is exactly mine too

djfm··on Functional Programs Are Imperative Pumpkins
Probably because event-sourcing is beginning to trend.

The article is not that interesting in itself, but the conclusion is a good starting point for a conversation that may be.

> Systems are largely not functional. But they can be.

So, how?

djfm··on Step-by-step tutorial to build a modern JavaScript stack from scratch
I love this ecosystem.

It's living, it's thriving.

I love the fact that tons of great engineers are coming up with new ideas everyday to make my life as a developer easier.

I love hearing a developer at a daily stand-up meeting saying he's been up all night trying out a new shiny thing and concluding by saying it also solves a big issue we had in our product and here's the pull request (timestamp 4am).

The hype is here for a reason. Hype is nothing bad, being excited about your tools makes your days happier.

I love the fact that JS people are never going to take "No" for an answer, constantly pushing the boundaries of what's possible, and making the web standards improve. I love the rise of functional programming. JS is a playground where mathematical theory and all of its beauty meets practice and the real world. It attracts talented people who bring a new perspective to our field. I love the fact that now I have theorems that ensure my login button will work.

> I'm a little lost at why we're using both Webpack and Gulp though.

Same here. I think one of the huge benefits of webpack is that it actually kills a lot of complexity by allowing you to skip gulp/grunt in most cases.

I think most people do not realize that the JS ecosystem is actually removing complexity.

Most people think the JS ecosystem is overly complicated, when in fact, it's just that in JS the complexity is exposed. This allows us to focus on reducing it. In order to address an issue, you must first make it visible.

Nowadays the trend in JS is to use multiple small tools that solve specific issues very well. We have a complexity in setup in exchange for less complexity in development. I argue this is a good thing, because setup is easy to document and only happens once in a project. Whereas you face development complexity every day.

This part from the tutorial is very significant to me:

> I recommend writing everything from scratch yourself

Yes! Yes! Yes! That's the heart of the JS philosophy: the ecosystem is trying very hard to make you understand what you are doing and why. It's giving you the keys to question what you're told and improve it. It's also why there's so much trolling. It's a good thing, question what seems too complex so that people can tackle the issue.

Please, do keep saying JS sucks, it's exactly what makes it so strong.

Do not use a framework, wire-up things yourself so that tomorrow you can repair it or upgrade it easily.

Do not write your router from scratch. But do connect the standard-issue router to your business logic yourself. Don't let someone else plug it in for you. It'll fit, but it won't look as good as if it were custom-made by a great tailor.

Finally, I love the config files. I hear a lot of trolling about all the config files, but I love the fact that I don't need to tell both webpack and mocha how to transpile JS and can just let the .babelrc tell them and everyone else. It's amazing that you can just git clone something and have all your environment setup as the author intended: language variant, linting... with .eslintrc developers using IntelliJ and atom both see the same messages.

Long live JS, or whatever comes next as we improve it!

djfm··on Figma 1.0 – Collaborative interface design tool
Linux users design faster in HTML.
djfm··on The decline of Stack Overflow (2015)
the question about "this" really is dumb
djfm··on Introduction of C4 traits into rice to increase photosynthetic efficiency
land that currently provides enough rice to feed 27 people will need to support 43 by 2050

Honest question: can't we assume that, as population grows, people will just plant more rice?

Sure this cannot be done everywhere, but there's surely some arable land somewhere that can grow, and maybe technology can help in other ways than by manipulating the genome of plants.

For instance, if we had cheap energy or a very efficient desalinating tech, we could desalinate ocean water and cultivate normal rice where there are deserts now...

In France farmers are complaining that the prices of farm products are too low and it sounds like there are many places where we produce way too much for too few consumers.

Instead of playing god to reduce a risk in 2050, can't we try right now to find economical, political, or technical ways to take the surplus from one place and bring it to places where food is already dramatically lacking?

EDIT: formatting

djfm··on An alternative to ads that lets you find products/services based on your needs
Wow, and it even works for general information that you do not even need to pay for! Incredible! Now how could we monetize this thing...
djfm··on Ask HN: Which language(s) should I learn to do one-man projects and earn money?
I have a feeling the ecosystem is becoming, err, slightly less worse :) My react redux babel boilerplate has not changed in about a year and I strive to stay up to date. Once you can write a webpack.config.js without looking at the doc you're all set :)
djfm··on Ask HN: Which language(s) should I learn to do one-man projects and earn money?
Have a look at redux's doc for instance, http://redux.js.org/docs/introduction/, and do read the code (it's about 300 lines total), they're both masterpieces of modern JS.
djfm··on Ask HN: Which language(s) should I learn to do one-man projects and earn money?
That being said I cannot wait for the time when Haskell becomes truly mainstream in web development.
djfm··on Ask HN: Which language(s) should I learn to do one-man projects and earn money?
Starting with standards is probably good yes. Something I found very helpful in JS is doing hard-core TDD at least at first (again, the tooling is awesome, see mocha, chai) - then after having done the same thing a hundred times you can become more relaxed. Good unit tests make up for a lot of missing types.
djfm··on Ask HN: Which language(s) should I learn to do one-man projects and earn money?
Yeah, I've been experimenting with it for a few days and I find it very promising. But the lack of types in JS is not such a pain point IMHO. In JS you can define a monad that works only with numbers, which is sometimes useful, and which you cannot do in Haskell without black magic. I think Flow's idea is that most JS programs are actually naturally well typed, and it often verifies in practice. Just because you don't have a compiler yelling at you doesn't mean your program is not well typed :)
djfm··on Ask HN: Which language(s) should I learn to do one-man projects and earn money?
Maybe the OP saw some code samples involving jQuery
djfm··on Ask HN: Which language(s) should I learn to do one-man projects and earn money?
Personally I use JS extensively for these kind of things. I hate JS the way most people use it, but JS is actually a crazy powerful functional programming language in disguise. And you can use it on server or client almost transparently. I mostly use only a subset of JS myself: I write const fat arrows that either return functions or immutable objects. No or very little state. I don't use "this". I use react + redux on the front-end. I maybe use 4 different language constructs total, both on the server and on the client, and my life as a programmer has become very peaceful, I can focus on delivering features. The nice thing about JS is, like the language or not, the tooling and ecosystem are awesome. For one man projects you can really make the language your own and achieve crazy productivity. YMMV.

Here's an example of what I mean, a Promises/A+ implementation in less than 100 LOC - just for the fun of it: https://github.com/djfm/promesse/blob/master/lib/promise.js

I think it kinda feels like Haskell, yet browsers understand it :)

djfm··on Ask HN: Early signs that a company is failing?
> If you DON'T trust your CEO, then your startup is also failing

Yes!

djfm··on Why Linux sucks and will never compete with Windows or OS X
Personally I cannot live without the xmonad window manager, and for this only I would stick with linux - ever tried to replace the window manager on windows or os X?

EDIT: typo

djfm··on Why Linux sucks and will never compete with Windows or OS X
And I guess of course "proper resolution grub" is of paramount importance given the time you spend inside grub every day.
djfm··on Ways to get motivated when you don’t feel like working
Not a social issue at my company - I often go out for a walk to get some inspiration and don't even need to pretend to be going to a meeting :)

EDIT: phrasing.

djfm··on Ask HN: Who is hiring? (July 2016)
PrestaShop <www.prestashop.com> | Paris, France | Full Time - Onsite

(Senior || Very Good) UX Designer

ASAP

We develop open-source e-Commerce software that powers over 250,000 shops worldwide.

We have a cool project to push e-Commerce one step further, I'm the PM and I'm looking for someone who's very good at user research, providing tons of crazy ideas we can test, and saying no to obvious mistakes.

The job is in Paris but we all speak English so there's really no problem if you don't speak French.

Interview will mostly be a workshop with you within the team where we try to come up together with a solution to an e-Commerce related problem. Of course there'll be some unavoidable regular interviews but we're more after talent than good talking.

If interested just email me directly at fmdj@prestashop.com.

We have good people, good tech, you could have a lot of fun.

djfm··on Bots won't replace apps, only better apps will replace apps
Finally the non tech people are discovering the power of the command line. The next big thing is bash.
djfm··on Es-search: Search ECMAScript structurally
This is very nice. I wonder if this could not be used as a base to build a code refactoring tool too! Refactoring is often just find and replace with a complex find expression.
djfm··on Top 100 Users on Hacker News by H-Index
I would also be interested in seeing a ranking in terms of articles read by the user.

While h-index and karma are great to measure, well, measurable contribution to the community, it fails to capture the contribution to the community that consists in (and this is true of a lot of other if not of all "karma policies" too):

  - sharing what one sees in this community, and spreading it through
    other channels
  - or even just using the knowledge gathered here
  - or, in the best case, using the inspiration found in this community 
    to help build a better world
I for one read HN articles and comments about 2 hours a day every single day even now at 5am on a Sunday morning after a party. This made me a better programmer, dreamer, and probably a slightly better person too.

Yet I speak little and have only a little under 300 karma. I believe, though, that I contribute somehow more to the community than what my karma shows (e.g. by spreading the word about a cool and useful technology at work - say functional reactive programming for instance - and seeing it being adopted or experimented with).

I think attendance matters, too :)

EDIT: list formatting

EDIT2: added bit about FRP cuz, you know, redux

djfm··on The Swedish Number – Talk with a Random Swede
This made me laugh so hard I thought an upvote was not enough. We're building a SaaS thing at work and I'll open with this at the daily stand-up tomorrow.
djfm··on Recreating Daft Punk's Da Funk with Overtone and Leipzig
I agree, but to me it is extremely hard to decompress. I've tried many times to get familiar with staff notation but I never could get an intuition of how it works.
djfm··on Designing simpler React components
> At least until you want asynchronous actions (and you will) in which case it seems to shrug and encourage using addons with side effects.

Imho there's nothing special with async actions and you don't necessarily need an addon, they're just actions arriving to the reducer later, and it can't see the difference. Your data fetching is no more async than a user clicking on a button.

← PreviousPage 2 of 4Next →