Skip to main content

Posts

Showing posts with the label tech

web sites which you can go to on the internet which offer interesting services for technical people usually without charge and often with their very code available for you to read if you can and if you care

A good friend of mine is quite horrified by the present trend towards web app replacements for more and more core development work and architecture; such apps are, after all, a grave violation of the elegance and security of good old POSIX APIs . (Who can doubt that some people will use these unsecured client-server apps to work with confidential data? How much user foolishness are architects duty-bound to anticipate and preclude? Answer: surely more than this.) The browser itself is already my debugger, linker, compiler, and garbage collector; the following lovely tools tempt us to concentrate more and more of our work into this one subjective spot - all running, objectively, on other people's computers . (Another transgression against the best old way .) But aren't they lovely: Repl.it . Futuristic feeling: offers command lines for two dozen languages and saves shareable sessions for each. Very damn fast too; try running factorial(2000) on it. An incredible educa...

comfy git

customising bash and gitconfig for fun and profit Git is amazing but verbose. (The awkward length of its commands may well be a feature, since awkward things force us us think, and careful thinking kinda behooves nonlinear distributed development.) We are trying to balance two forces: 1) every increase in typing ease means an increase in the risk of typo error. 2) Every ounce of effort that source control takes is subtracted from actual development. The really terse aliases (one word, like "gits") require us to configure the bash shell rather than the git client running in it. First create a ".bashrc" file in your git bash current directory (i.e. in " ~ "): touch ~/.bashrc gedit ~/.bashrc [Enter aliases you want, save] source ~/.bashrc [Profit] For the git aliases just put em in here (starting with [alias] ) > gedit ~/.gitconfig If you want to keep Git's excellent branch-name auto-complete working on your aliases, you'll nee...

Learn PHP Without Going Mad

(c) Ian Baker (2012) PHP, the language which runs 80% of the known internet , is renowned for its fundamentally poor design . The language began as a few little functions letting non-programmers manage rudimentary web forms. But it has expanded into the 7th most popular language there is, a very fast , mature object-oriented thing which tries hard to manage its primary burden: itself . (Much of the horror has been patched over since PHP5 , I am told by grizzled veterans.) The lead dev at my work, who's spent 10 years with it, admits that it " keeps you on your toes ". (However, one would prefer that one's tools were transparent, an extension of the arm.) Neal Stephenson notes that source code comments (the backstage cribs of your software) read like the terse mutterings of pilots wrestling with the controls of damaged airplanes. The general feel is of a thousand monumental but obscure struggles seen in the stop-action light of a strobe. This struggle is th...

Pair Review: Rao vs Morozov

Breaking Smart, 'Season' 1 (2015) by Venkatesh Rao. A grandiose and low-res narrative covering all of history from the perspective of technology (or, rather, the perspective of the tech industry (or, rather, of the solutionists )) in 30,000 words. Rao is one of the big in-house theorists for Silicon Valley*, and this is reflected in his contagious enthusiasm for just how much is becoming possible so quickly, the degree to which this time actually is different ("Software is eating the world"). Second half of this season attempts to generalise software engineering ideas - Agile , forking, sprints and all that - to all human endeavour (...) As a simple example, a 14-year-old teenager today (too young to show up in labor statistics) can learn programming, contribute significantly to open-source projects, and become a talented professional-grade programmer before age 18. This is breaking smart : an economic actor using early mastery of emerging technological levera...

Notable words of the past little while, Q3 2015

' primary ' (n. and adj.): Useful term in the modern free-love movement : one's most significant romantic partner (n.), or most significant relationship (adj.), as measured by emotional intensity, tacit commitment, logistical entanglement (cohabitation, children, bank accounts), and their formal priority over others. Of course, this is basically what traditional relationships mean by 'a relationship' (or, better, by 'next of kin') but it's a very good idea to be explicit about these things even if, like me, you're not especially modern. Not least, this allows us to understand what it actually means to commit oneself in the standard manner; to question the bits of it that are stupid or overgeneralised ; and to think of all other-seeking humans as sharing a great deal of motivation and emotional whatnot, whether they are swinger, asexual, Bostonian , polyamorist or monogamist. ' aromantic ' (adj.): Not experiencing romantic attraction (as o...

the great toolchain

(c) PuppyOnTheRadio (2011) To do web dev, I need an incantation: " ES6, Atom, Mocha, Mongo, V8, Node + Promises, npm, Express, Docker, Grunt, Ractive, VMware, Git, Gitlab, JIRA !" Together, these technologies form a toolchain and a stack . (To clarify: each of the above are different programs, or frameworks, all used in making one other program. Each link in the chain has quirks and an internal mini-language to learn. And this is all besides the home-grown scaffold the target program actually uses / consists in.) Two months ago, I'd no idea that people use a dozen widgets to get large projects up and talking; I had no acquaintance with most links in the above chain. But I'm being melodramatic: we use these because the project I'm working on is so large; all of the links make my life easier, and most are unobtrusive (to the point where they don't need launching, even). And it is easy enough to get by with only a fewer components . It's jus...

official research miscellany

(c) DCLCQ (2014) I made a Markov chain of my social media data recently. Here are my cherry-picks (out of perhaps 300 seeds): What an option for underhand comments made as just data. I'm being a first-world problem? I think the inevitable is still on loan from the History Department. will smash them. ran out of your 'reality' bullshit. We're the lowest of others; we continue in our children, and in Libya. scratching a certain region of spacetime. gee thanks bud. Ah, my cruelty. I am currently reading Robbie Williams' thought-provoking autobiography... metaphysics really want us to perve. A city full of men die like dogs, for telling your name, sacred music in the matter. I think, too account for the softer tribes living in the missing beats. I'm moving closer to you, but it never fully comprehend woman's concrete situation. my epaulettes, ripped off While desire focuses on the line of flame that characterizes the universe in terms of b...

Among the worst papers I have ever read:

  What Lies Beneath ? The Role of Informal and Hidden Networks in the Management of Crises (2014),  Financial Accountability & Management , Vol. 30, Issue 3, pp.259-278 " It is easy to lie with statistics. It is hard to tell the truth without it. " – Andrejs Dunkels A piece of organisation theory which is simultaneously vague, ugly, repetitive, and trivial. Welcome to the fourth-hand, corporatized end-point of Merton and Latour : the desert of the firm . The paper's fatuousness can be found at many levels: from the overall repetition (the same badly-conceptualised ideas stated ten times) to nonsequitur passages like this , to its sentences, most of which are formally crude and intellectually empty: Prediction is based on both known and unknown factors, and thus the organisation’s ability to capture relevant information and make informed judgements on which to base their predictions, becomes essential. or this: There are issues around determining the legi...

oh god the data miscellany

(c) Occupy the Amendment (2014), Jeff Hemsley The reason to use quantitative methods wherever possible* is not that numbers are generally better representations — they're not, for psychological or social or art phenomena — but because of what they do to your method: first, they minimise the space that our raging biases get to act in; and, more, because they force the enquirer to think clearly about the Thing. (" What about this Thing can be counted ?" implies the prior questions "What are the distinct features of the Thing?" and "From which of its features arise which features?") * And they are possibly always possible . **************************************************************************************** The quantitative omits most of the lived world; the qualitative includes all of its bullshit. (The former is leashed to one rich dimension, numbers; the latter is leashed to an insensitive kludge , human perception and languag...

multifarious miscellany

Stable breeder in Conway's Game of Life. Original author one ' Hyperdeath ' One of my computer science lecturers does philosophy in passing while discussing superficially unphilosophical things like Harvard vs Princeton and the gubbins of molecular computing. (Molecular as in Hofstadter's comment: "Looking at a program written in machine language is vaguely comparable to looking at a DNA molecule atom by atom.") It is gigantic stuff: "People always define computers as 'data-processing machines' - which they are not and cannot be, because data are mental events. Machines process representations - and all this is is us using the physical world to help us with the mental world we have such limited range within (usually to help us with the physical world we have such limited control over). (This is also why the infinite cannot be properly represented, because there is nothing usably physical for the purpose.) (In the reified field that g...