My daily readings 08/13/2013

  • tags: HR

    • I agree with a lot of stuff said here – caring, or intrinsic motivation, is one of the most powerful attributes you can hire for. There are, however, a plethora of other attributes out there, and restricting your potential hires to the tiny subset of people that are as insanely motivated as yourself seems like a recipe for never hiring anyone and paradoxically never actually solving any problems.

      Specifically I don’t think points 3 and 4 are quite on the money – how much you care is often based on how much you perceive people care about you, and equity can be a pretty big signal of that. Additionally, I think people who care can be quite contentious.

      Still, a good enough point to talk about. Apparent enthusiasm is one of the best things you can select for, when you see it, and it can make up for a lot of other things that might be lacking.

  • tags: design programming

  • tags: annotation

    • The key idea behind Casetext is that the annotations that drive Lexis and Westlaw’s bottom lines can be crowdsourced. One obvious parallel is Wikipedia, with its hundred million man-hours of user contributed content, but Huey and Heller also point to Quora for its high quality answers by professionals and experts in various fields.


      I asked Casetext’s founders why they thought they would be able to attract users to contribute. There are several aspects to their strategy. First, they focused on making contributing extra easy by concentrating heavily on UX. Users can very easily add tags to a case, or, more valuably, to paragraphs within a case. It’s also easy to link to other resources, including other cases or even outside materials like law review articles, which are the legal equivalent of scientific journal articles. Second, they’re hoping users will see some benefits in contributing content. Like Quora, users sign up with their real names, which incentivizes good behavior and means quality contributions can lead to real world reputational effects. Some early users — who the founders brought onboard by plain old hustling and tapping their networks — include well known law professors and lawyers. For example, Alexander Reinert, a law professor at Cardozo Law School, annotated Iqbal v. Ashcroft, a case he argued at the Supreme Court.

    • The one thing I could see holding Casetext back is its database, which is currently limited to the US Supreme Court, federal appellate courts, some federal District Court decisions, and Delaware. This is acceptable for some practice areas (such as patent litigation, which is exclusively in federal courts), but the great majority of lawyers practice in state courts, or at least have to deal with state law issues. The founders tell me California and New York are next, which makes sense because they’re the biggest legal markets, and more will follow.
    • His reference to a lack of dependency issues is a runtime aspect: A Python program requires the right Python interpreter and all the right Python modules to be set up correctly on the target system.

      I know, that’s why I said that it is true for deployment. It’s an advantage of compilers that compile in packages/modules statically into the binary. E.g. Haskell also has this advantage.

      The downside, of course, is that if there is a security vulnerability in some package, you have to recompile and redeploy all your binaries, rather than replacing one dynamic library.

      Whether it is an advantage depends on the usage scenario.

      I think you realised that, but versioning imports in Go is at exactly the same state as versioning imports in Python. I can’t write an import statement in Python that describes what version I need, nor can I in Go.

      Or Haskell or Java or Ruby. But these languages have standard (or nearly standard) tools that allow you to specify versioned dependencies (Cabal, Maven, Gem). Go puts package management more or less in the language, but doesn’t do version management.

      So, your comparison here is not fair. You should compare Go’s package management with Python plus setuptools/easy_install, Java plus Maven, Haskell plus Cabal, etc.

    • My impression is that static linking is undervalued by developers who have not been responsible for the production deployment of binaries to larger (hundreds or hundreds of thousands of systems). When debugging production systems at that scale you want to minimize the number of moving parts given the problem is so hard to begin with.

      ABI compatibility just postulates that the bytes entering and leaving the interface will be marshalled the same way. However, the semantics of the function must by definition always change when you change the implementation.

      You are arguing that these semantic changes are sometimes inconsequential, like for security updates. Based on my personal experience I think a more conservative view is appropriate and any changes to the dependencies of a program should be tested before large scale deployment.

    • JeremyMorgan 13 hours ago | link

       While I’m too tired to read this thru thoroughly, I had to skim it and upvote it. This was actually my first thought when go was introduced. I don’t see it taking over the web world, or the gaming world or anything of that sort, but I do see it being the next tool for multithreaded applications related to system work.

      Go may never “hit it big” with the mainstream but it very well could find it’s place in administration. That’s what I hope to use it for as I get more proficient.

    • josephkern 11 hours ago | link

       It was built around software engineering principles (rather than experimental language constructs). The attention to small details (imports via git/bzr/hg, gofmt, go run, etc) deeply resonates with system admins (or at least myself and the OP).


    • I think Mark Summerfield’s book is quite a good introduction:

      Many of his examples touch upon sysadmin work, such as the MP3 playlist conversion, implementing concurrent grep, and coverage of common file formats (XML, JSON, plain text) and archive formats. It’s also a good introduction to Go. At times it drinks the kool-aid a bit to much, it sometimes takes quite mundane constructs as an example how stellar Go is (let’s be honest, Go is quite a boring language, but boring can be good at times).

    • If you understand that they seem to be written as a learning exercises by the respective authors, I found that there’s a good introduction to the nuts and bolts to be had browsing attempts at creating userspace tools in go: eg. or .. it seems to be a popular first project 🙂
    • sysadmin here; I’ve been enjoying An Introduction to Programming in Go by Caleb Doxsey[1]. Short, sweet, and right to the point without being terse.

      There is nothing in this book that will directly relate to using go as an automation language, but I’d rather learn the fundamentals before learning specialized examples.


Posted from Diigo. The rest of my favorite links are here.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: