You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
140 lines
5.8 KiB
140 lines
5.8 KiB
11 months ago
|
<!DOCTYPE html>
|
||
|
<html lang="en">
|
||
|
<head>
|
||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||
|
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||
|
|
||
|
<!-- Enable responsiveness on mobile devices-->
|
||
|
<!-- viewport-fit=cover is to support iPhone X rounded corners and notch in landscape-->
|
||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1, viewport-fit=cover">
|
||
|
|
||
|
<title>Julio Biason .Me 4.3</title>
|
||
|
|
||
|
<!-- CSS -->
|
||
|
<link rel="stylesheet" href="https://blog.juliobiason.me/print.css" media="print">
|
||
|
<link rel="stylesheet" href="https://blog.juliobiason.me/poole.css">
|
||
|
<link rel="stylesheet" href="https://blog.juliobiason.me/hyde.css">
|
||
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700|Abril+Fatface">
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
</head>
|
||
|
|
||
|
<body class=" ">
|
||
|
|
||
|
<div class="sidebar">
|
||
|
<div class="container sidebar-sticky">
|
||
|
<div class="sidebar-about">
|
||
|
|
||
|
<a href="https://blog.juliobiason.me"><h1>Julio Biason .Me 4.3</h1></a>
|
||
|
|
||
|
<p class="lead">Old school dev living in a 2.0 dev world</p>
|
||
|
|
||
|
|
||
|
</div>
|
||
|
|
||
|
<ul class="sidebar-nav">
|
||
|
|
||
|
|
||
|
<li class="sidebar-nav-item"><a href="/">English</a></li>
|
||
|
|
||
|
<li class="sidebar-nav-item"><a href="/pt">Português</a></li>
|
||
|
|
||
|
<li class="sidebar-nav-item"><a href="/tags">Tags (EN)</a></li>
|
||
|
|
||
|
<li class="sidebar-nav-item"><a href="/pt/tags">Tags (PT)</a></li>
|
||
|
|
||
|
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
<div class="content container">
|
||
|
|
||
|
<div class="post">
|
||
|
<h1 class="post-title">Things I Learnt The Hard Way - A Language Is Much More Than A Language</h1>
|
||
|
<span class="post-date">
|
||
|
2019-06-24
|
||
|
|
||
|
<a href="https://blog.juliobiason.me/tags/books/">#books</a>
|
||
|
|
||
|
<a href="https://blog.juliobiason.me/tags/things-i-learnt/">#things i learnt</a>
|
||
|
|
||
|
<a href="https://blog.juliobiason.me/tags/languages/">#languages</a>
|
||
|
|
||
|
<a href="https://blog.juliobiason.me/tags/community/">#community</a>
|
||
|
|
||
|
<a href="https://blog.juliobiason.me/tags/ecosystem/">#ecosystem</a>
|
||
|
|
||
|
</span>
|
||
|
<p>Picking a programming language is much more than just picking the words that
|
||
|
will generate a code. They come with a community, a leadership, an ecosystem
|
||
|
and a thread the binds them all together.</p>
|
||
|
<span id="continue-reading"></span>
|
||
|
<p>Programming languages, in essence, are simply a bunch of keywords that make
|
||
|
things "go". But besides those keywords, they also bring their community, the
|
||
|
way the leaders deal with the community, the tools created by the leaders or
|
||
|
community to deal with the minutiae of creating a system, the way those tools
|
||
|
interact with each other, and a lot more.</p>
|
||
|
<p>While a language may have a simple syntax, it may be that the ones controlling
|
||
|
the language actually don't give two shits -- if you pardon my French -- to
|
||
|
the community. They focus on solving <em>their</em> problems, not the community
|
||
|
problems<sup class="footnote-reference"><a href="#1">1</a></sup>.</p>
|
||
|
<p>Or maybe the community has duplicate tools -- which is not a problem -- but
|
||
|
that developers of each tool don't talk to each other. Or worse: They simply
|
||
|
refuse to look what other tools are doing, which could be used to improve
|
||
|
their own<sup class="footnote-reference"><a href="#2">2</a></sup>.</p>
|
||
|
<p>And maybe that third language is not as simple as others, but the leadership
|
||
|
is always discussing things with the community, being transparent on their
|
||
|
decision, allowing the community to discuss the future of the language and
|
||
|
even different groups building tools decided to merge efforts to give the
|
||
|
community better tools.</p>
|
||
|
<p>That's why you can't "pick" a language by its syntax alone. That's only the
|
||
|
surface of what the whole of a language encapsulates and if you ignore the
|
||
|
other elements in it, you may find yourself with a cute language in a
|
||
|
community that is always fighting and never going forward.</p>
|
||
|
<p>And picking a language for something <em>above</em> the syntax is even worse.</p>
|
||
|
<div class="footnote-definition" id="1"><sup class="footnote-definition-label">1</sup>
|
||
|
<p>Yes, this is common, even in larger communities. And yes, I've seen the
|
||
|
leadership ignoring requests from the community and, sometimes, just
|
||
|
ignoring all the hard work the community did to supply the missing bits
|
||
|
because they didn't like it.
|
||
|
<sup class="footnote-reference"><a href="#2">2</a></sup>: Again, I've seen this before: There was a language that didn't come with
|
||
|
a build tool bundled. The community created a tool, which was widely
|
||
|
adopted. Later, a new build tool appeared and, in one of the notes, the
|
||
|
author of the new tool mentioned a feature. The community came and asked
|
||
|
"The previous build tool did something like that, what's the difference
|
||
|
between that and your tool?" And the answer was "I never used the first
|
||
|
tool." So, basically, the community ignored whatever the community was
|
||
|
using.</p>
|
||
|
</div>
|
||
|
<div>
|
||
|
|
||
|
<div style="float:left">
|
||
|
<< <a href="/books/things-i-learnt/monitoring">Learn To Monitor</a>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<div style="float:right">
|
||
|
<a href="/books/things-i-learnt/outside-project">Don't Mess With Things Outside Your Project</a> >>
|
||
|
</div>
|
||
|
|
||
|
</div>
|
||
|
|
||
|
</div>
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
</div>
|
||
|
|
||
|
</body>
|
||
|
|
||
|
</html>
|