Show more
Tim boosted

8. A language is much more than a language

A programming language is that thing that you write and make things "go". But it has much more beyond special words: It has a build system, it has a dependency control system, it has a way of making tools/libraries/frameworks interact, it has a community, it has a way of dealing with people.

Don't pick languages just 'cause they easier to use.

Tim boosted

7. When it is time to stop, it is time to stop

Learn when you can't code anymore. Learn when you can't process things anymore. Don't push beyond it, it will just make things worse in the future.

Tim boosted

6 3/3. Good languages come with integrated documentation

If the language comes with its own way of documenting functions/classes/modules/whatever and it comes with even the simplest doc generator, you can be sure all the language things and libraries will have a good documentation.

But languages with no integrated documentation will most of the time have bad documentation.

Tim boosted

6 2/3. Documentation with an "and" means you're doing it wrong

A function should do one thing and one thing only. If you have to add an "and" to its description, it probably means the function is doing two things and you should break it apart.

Tim boosted

6 1/3 The documentation of a function is its contract

The documentation should reflect the code; if it doesn't, you have a problem with your code, not your documentation.

Tim boosted

6. Documentation is a love letter to your future self

Yeah, it's tiring to write the damn documentation on every freaking function, but your future self will thank you for letting the code explained on what it's doing.

Tim boosted

5 1/2. Code formatting tools are ok, but are no silver bullet

Computers are very flexible into reading code, but humans are not.

(I may even say that, if the tool is moving a lot of your code, there may be a real architecture problem with your code.)

Tim boosted

5. Code reviews are for architecture, not style

Do not complain about a misplaced semi-colon or a "missing space before parenthesis" in a code review. That's not the forum for this -- unless you found an architectural problem, then you can point both.

Tim boosted

4. Future thinking is future trashing

Solve the problem at hand. Don't think "We can do this in a more general way and, in the future, it will be easier to add more". Adding more will never come and you'll have to deal with a pile of trash.

Solve one problem, then solve the next. A patter of problem will emerge -- or not.

Tim boosted

3. Tests make better APIs

We build stuff in layers. Tests allow use to see how the API of a layer behaves and we can make better APIs by just checking our struggles writing tests.

Tim boosted

2. Tests are good, integration tests are gooder.

I'm currently writing tests for a single module only (e.g., only tests for the "view" layer). It gives me some idea of what is right and what is wrong, but in no way I feel those tests say my code is doing what it should do.

Tim boosted

1. Monitoring.

After writing a lot of metrics for a project in a previous life, not adding any support for Prometheus makes me feel nervous of deploying my code in production.

Tim boosted

Out of the blue, I thought another presentation I can make for people starting UNI:

"Things I Learnt the Hard Way in 30 Years of Software Development"

Tim boosted
Tim boosted

Today 3 years ago 12 people founded Nextcloud as an 100% Open Source, sustainable, community oriented and privacy aware cloud project and company. I‘m so happy and proud to see what the Nextcloud community achieved since then.

Tim boosted

Hey friends, since I have almost no friends on Mastodon, promo me and help me find people.

I'm a furry artist and musician who's into programming, and video games. My tastes are very eclectic so I'm into most things.

@alcinnz Thanks for all your meaningful boosts.

I’m on the way to migrate away from the Apple silo and found many interesting thoughts in your boosts.

This "Twitter" is funny. There is only one instance: @twitter.com 🤣

re:publica 2019 – Cory Doctorow: It's monopolies, not surveillance

youtube.com/watch?v=Zy4VU5naty

//cc: @aral

Show more
Ruhr.Social

Ruhr.Social


v english version below v

Willkommen bei Ruhr.Social, eurer Mastodon Instanz für alles rund ums Ruhrgebiet. Wir wollen eine Plattform für Tech-Liebhaber, Nerds und Gründer sein und uneingeschränkten, werbefreien und sozialen Austausch ermöglichen.

Viel Spaß :)


Welcome to Ruhr.Social, your mastodon instance for everything regarding the Ruhr area in Germany. We want to be a platform for tech-lovers, nerds and founders of small businesses and provide an ad-free and social place to talk for you.

Have fun :)

This instance is made possible by the awesome people at 9elements