Who’s on Your 2016 Web Development Thank You List?
hackernoon.com
hackernoon.com
- https://github.com/mholt/caddy
Caddy is an HTTP/2 webserver written in Go that integrates with ACME and serves websites of TLS by default. It powers https://paragonie.com and manages our HTTPS certificates automatically.
- https://github.com/twigphp/Twig
Twig is one of the sane templating languages for PHP projects that I use extensively.
- https://github.com/composer/composer
Composer revolutionized PHP development.
A lot of the "PHP sucks" arguments focus on things that haven't been true about the language since 5.4 (or earlier), but one thing that truly did suck was dependency management (before composer came around).
Dependency management also sucks in other languages (and still sucks in those). I suspect that's why few used that as a criticism of PHP.
- https://github.com/jedisct1/libsodium
Libsodium: modern cryptography that you can likely find bindings for in your favorite programming language.
I don't really mind them, but I find it extremely boring to have to register in the template engine every function that you will end up using somewhere else in your code and eventually have a language with less feature than plain old PHP and an other layer of cache.
So which use cases make you need Twig, for instance ?
It also makes it easier to separate your presentation logic from your business logic.
For example: https://github.com/paragonie/airship/blob/master/src/Cabin/B...
This uses macros and other fun things. Doing that in PHP would get messy.
https://github.com/paragonie/airship/blob/master/src/Cabin/B...
This year, I made my first foray into building non-trivial web applications with Angular. Despite (or perhaps because of) that, I was quickly filled with a brand new respect for good old jQuery. I have yet to find such a simple, maintainable, readable way to parse complicated DOMs.
https://github.com/jquery/jquery
I first started working with the Slim Framework in March. Over those nine months, it has become an absolutely indispensable tool for me.
VS Code became my primary code/Markdown editor in 2016. It improves steadily each month [1] and already has a great extension ecosystem and community. It also spurred my switch to Markdown for all note-taking due to its powerful integrated Markdown features.
Thank you to the VS Code team and Microsoft for sponsoring the project.
I do all my group collaboration with it, and am no longer subject to Google's whims about my data. Sandstorm predates 2016, but has really accomplished a lot in 2016.
https://github.com/reactjs/redux
I love it. To the point that I think it's application architecture to rule all architectures. I dream of a brand new Unix based OS that adopts this architecture as it's standard over MVC.
I suspected this would be the case when first reading about redux, and dealing with it at practice in work, the consequences can be quite bad.
Not to say that some concept of global application state is bad - one always has it. It is incorrectly making it global when you really want an instance of it for a particular view. Redux itself isn't bad as it helps manage an important situation, but it is too much of a facilitator of this antipattern when it comes to state that absolutely should not bleed across views.
without wanting to sound patronising, but I wonder wether you're structuring things incorrectly.
Edit: Also, I should mention that taking advantage of the great middleware options for isolating side effects makes redux a treat to work with. I am using redux-observables, but I have heard great things about redux-sagas as well.
It's a remote backup tool that solved all the problems. It's basically duplicity[2] but without the unfortunate design fault of having to re-upload all your data every few months.
Our[3] customers love it and we see new deployments of it (even among existing customers) every single day.
[1] https://borgbackup.readthedocs.io/en/stable/
I sometimes tell myself I should spend less time browsing HN comments but then I find little nuggets like this that really make it worthwhile.
Using vim and thinking of the satellite of tools in my terminal as my IDE has made me a better programmer and I have a better appreciation for building on the foundation of other developers work (huge reduction in desire to invent everything myself).
So I want to thank all of you who write articles, share tips and tricks about using vim and utility programs, and especially those of you who contribute to open source software. I've learned a great deal from you all.
The jump from 4.5.x to 4.6.x included a huge number of commits from a small core of people, and the future looks bright. My 'thank you' is in the form of written thanks to the development team and contributors, and I'm aiming to increase my regular commitments to helping with docs and other non-dev tasks to half a day per week in 2017.
I would add Chrome, Node.js, Babel, Webpack, Knex, MySQL.
I write SPAs for a living and a lot of the technologies mentioned in this thread are a godsend. Whenever somebody expresses the above sentiment I feel it's only because they never had to maintain a complicated web app.
Correct: we used to write websites that were as simple as it was feasible for them to be, with as few client-side requirements as possible. It's the whole idea that "complicated web apps" are good things that I dislike.