I’m not terribly experienced with Unix tools but I reckon that it might be best to just use Perl instead. Then you just have to worry about PCRE instead of PCRE in addition to old-style regexps.
perl one-liners are pretty powerful and can replace awk/sed/cut/tr/etc. That being said, then you have to remember which command-line options you should give perl (was it -lane to do X, or was it -pie, or something else entirely?).
But yeah, the perl rabbit hole goes as deep as you want to, and in some sense it makes it more difficult to say "screw it, I'm redoing this in a real language" as complexity rises. And then you end up with a thousand lines of line noise.
Well Perl is a real language, so of course it makes it more difficult to say “screw it, I'm redoing this in a real language”.
That said the Perl that you write in a one-liner should be different than the Perl that you write when the complexity rises.
If you have more than a few hundred lines, you probably need to move some of it out into a module. There should also be tests for that module. It might even make sense to structure it like a CPAN module so that you can use the existing tools to test and install it.
I have to admit the last time I wrote anything larger than short scripts in perl was in the perl 4 period (on HP-UX to boot). I eagerly awaited the perl 5 version of the Camel book, but in the end I jumped ship to python before getting seriously into perl 5.
I haven’t coded Perl beyond one-liners. What attracts me to it are its regular expressions. So much of Unix scripting seems to involve regexps. So I figure Perl+utilities is the better option compared to utilities+Bash.
I wouldn’t wanna use it for more than short scripts. Perl 6 might be fun, but it doesn’t seem to have a large enough community.
If you want to improve your coding skills you should read “Higher Order Perl”. (made available for free online by the author)
If you want to improve your Perl code read “Modern Perl”. (There is more than one version, and I know the first version was made freely available online)
Perl is a better language for large codebases than most people give it credit for.
That said it allows more creativity when it comes to your code. So you can make awful code just as easily as beautiful code.
Perl6 makes the beautiful code easier to write and shorter, while making awful code a bit harder to write.
What a useless comment. The OP is an interesting walkthrough of solving a highly specific problem in a clever way using a common but often poorly understood toolset. Then you come in and leave a snarkbomb trashing the idea that learning how to use this toolset is worthwhile without providing any reasoning or alternatives.
Do you also trash posts about learning how to build your own furniture or troubleshooting car engines?
What elevated domain do you operate in that only has perfectly elegant solutions to beautifully architected problems that use only tools perfectly crafted to solve those exact problems? Doesn’t sound like very interesting work to me.
No, I don't think it makes any sense. It seems to be saying that a "post-communist society" is a place "where bike mechanics don't invent flying machines". This seems to imply that a communist society is the kind of place where bike mechanics do invent flying machines, which, historically, is laughably far from the truth. Those bike mechanics, first, had the money to be able to invest some of it in experimenting with flying, and second, did so in the hope of further profit. They were very much capitalists, not just in the society they lived in, but also in behavior and motivation.
Child’s play. True capitalists (1) hire wage labor to do the actual work, and (2) enlist the aid of the state to do all R&D and later use any technology that comes out of the research (socialize the costs (risks), privatize the profits).
I didn’t get the post communist part either. But I connected with the idea that we are moving to a world where people think that innovation can only be produced by certain classes of people.
The Wright brothers lived at the same time that Kafka and Weber were writing about bureaucracies. It was the time of positivism; the belief that social sciences could usher in scientific societies led by technocrats. Bourgeois professionals of the less progressive inclination thought that people could be managed in a mechanical fashion (now only certain kinds of less socially aware engineers dare to admit to their self-serving professional biases in public).
I don’t think the turn of the 20th century was more egalitarian in the sense that you speak of.
I don’t think that time was more egalitarian. The Wright brothers are just an excellent example of innovation coming from people nobody expects it to come from. Even their methods were top notch.
Back then they had classes of people who thought innovation was theirs solely and we have that now too.
I am not resentful. It's a pretty normal thing when a profession gets more professional and is considered highly paid. It attracts people who aren't naturally attracted to the job. From observation a lot of doctors aren't that enthusiastic about their profession either but do it for the reputation and money.
There is definitely a division between people who are attracted to the profession because they have an intrinsic interest and those looking for extrinsic rewards.
I bet asking what age someone started programming is as good an interview question as any other.
I'd fail that too. I didn't have the money to get a computer. But I am mechanical engineer and in my first job I quickly was the guy who wrote macros for our CAD system instead of doing designs with it. I never liked using the CAD system but I loved writing code for it. That would indicate a natural attraction to writing code.
I mostly agree. I see this is a self-fulfilling prophecy. When a unicorn with 20 years experience cannot be found I feel like companies settle on junior developers they don't have confidence in. Because of the low confidence the standard for exceptionalism is set very low. This is extremely problematic because it directly produces entitlement (unearned praise) in a generation already stereotyped 9perhaps falsely) as exceptionally entitled.
In a healthy environment organizations would hire junior developers into environments that are social inviting, but technically not at all friendly. Without challenges developers won't grow, so challenge the shit out of the juniors.
What better way to refute elitism by mentioning “even janitorial work”; the job so derided by ostensibly successful people that it is the stand-in trope for “low-status employment”.
I was looking for a job commonly believed to not have creativity, so the stereotypicalness makes sense, but if you want me to confess to elitism, sure...I have plenty of bad biases. The point is not to say I'm free of them but to say they are bad.
> There is the matter is that blue collar professions slowly become extinct because they are replaced by robots and automatic machines. Now whole factories are ruled by a few engineers and skilled technicians. This is good because no industrial work should be done by hands more than once. And that is especially true in programming, because in programming non-creative work can be automated very easily. The present world does not need more blue-collars, because machines do their work very well, it needs more scientists and engineers who will invent our future. Likewise, the world does not need more low-skilled programmers (even though they are not blue-collars in any sense) because they will be replaced very quickly by smart machines and programs. Instead, the world needs more high-skilled programmers, true engineers, who will change our life, making it better, safer and longer.
The world doesn’t change by “getting things across” to CEOs and politicians. If a CEO’s enlightenment gets int the way of his fiduciary responsibilities, he will simple be replaced.
People make the system. The CEO. The board. Your local city council. Your federal representatives. There is no smart contract, there is no code that evaluates the rules obediently without interpretation. Just people.
And yet ... there's a tremendous degree of variety between and among people, but it seems that certain archetypes tend to emerge time and time again in specific positions of power and authority, including in business and politics.
One simply has to wonder if these systems either select for or change those they come in contact with. Which would then point to a systemic rather than individual responsibility role.
This is reductive. Systems are not merely sums of their parts (people): they have emergent properties.
Systems don’t change because people as individuals decide to do things differently. That’s not sociology, that’s just individualism. Unfortunately(?) there is no way to avoid analysis at the systemic level. Neither individuals nor “smart contracts” can get around that.
On a micro scale, yes. On a macro scale, it's easy to see that even the higher ups are just players in a bigger game, the rules of which they did not make. But the most successful ones (according to a specific definition of success) play the game well.
This is cool. I'll note that "members of a system", implying individual focus, is a slight straw man of my argument, which is that elements such as "CEOs" or "boardmembers" could be incentivized with new knowledge. 5 and 4 seem relevant--new risks cause companies to restructure their processes all the time, it seems like making clear that backdoors can pose direct risks can cause systemic change.
You apply pressure to the system. Not just elements (individuals?) that make up the system. The most enlightened human being could become a CEO (insert your favorite mythical person) of an oil/coal company; they would still simply be fired if they didn’t do their job.
Seems like you are going for a two-staged language with homogeneous metaprogramming. As opposed to heterogeneous metaprogramming (macros). I like it, I must say.
Then again, Perl is even scarier.