Profile

Cover photo
Lex Spoon
Works at Semmle
Attended Clemson University
590 followers|79,251 views
AboutPostsPhotosYouTubeReviews

Stream

Lex Spoon

Shared publicly  - 
 
This is great if it holds up. At the same time, it's a little sad that a song published by 1935--and now apparently sooner than that--is still even a candidate for copyright protection.

On a lighter note, I just love the instructions at the bottom of the page. "When the song is sung as a birthday greeting for some child in the room, insert the name here". Adorable. There was a time in human history when people had to be instructed about that.
 
Sing along, everybody!

It's pub-lic do-main
It's pub-lic do-main
It's pub-lic, you assholes
It's pub-lic do-main

$2m per year, for 80 years, plus pre-judgment interest, plus inflation, is a hell of a lot of money. Sadly, most of it is barred from collection because of the statute of limitations (and laches), but it's still going to take a huge chunk out of Warner Music's hide.
Last minute evidence that completely turns a legal case on its head doesn't come about all that often -- despite what you see in Hollywood movies and TV shows. The discovery process in a lawsuit generally reveals most of the evidence revealed to...
35 comments on original post
2
Add a comment...

Lex Spoon

Shared publicly  - 
 
It's weird that this bug report has been rejected, but I guess that's why it has remained this way for many years. I would guess there are two factors that have gotten Eclipse into such a strange stable state around this problem.

The first factor is interface mania. File search is an obvious feature if you discuss it by itself, but the implementation goes through Eclipse's resources API. Thus, every discussion about file search brings up design questions about the resources API, which for sure nobody wants to touch at this point. This is a cost of reuse and abstraction that make it not as good of a deal as it seems like on the surface. In the case of Eclipse's file search, maybe they should have it avoid the resources API for the main search functionality.

The other factor is Stockholme syndrome. You see it all the time if you work in one development group and then in another. You'll see something work fine in the first group's software, only to be borked up in some horrid way in the second one. It can be hard to fix such problems. The people in the second group are often so used to the problem that they start attributing it to something fundamental and special about their system, much like a kidnapping victim. If you start discussing how it could be fixed, they think you are talking science fiction, switch to blue-sky mode, and start throwing out all kind of whacky ideas.
Created attachment 189189 [details] fix 1 Text search pops up a modal error dialog for out-of-sync resources. Changes in bug 303517 will mean the workspace responds more proactively to such resources. This attached patch lets Text Search handle out-of-sync resources gracefully.
1
Add a comment...

Lex Spoon

Shared publicly  - 
 
Given the security and privacy issues, I wonder if certain common items will start being advertised as not supporting wifi.  "This TV will only display things that are plugged into it!"
Like most people, I tend to think of the Internet as digital, carrying information, images, text, music, and the like. But we seem to be standing on the edge of what is commonly called the "Internet of Things," in which physi...
2
Add a comment...

Lex Spoon

Shared publicly  - 
 
A good checklist for anyone making the leap to GitHub. Be aware, you can always do a bad and cheesy conversion just to try it out, and then fix things up better later on.
In my last post, I inveighed against using git-svn to do whole-repository conversions from Subversion to git (as opposed to its intended use, which is working a Subversion repository live through a...
1
Add a comment...

Lex Spoon

Shared publicly  - 
 
If you scroll down, you can see "Examples of requests we encounter". I find it hard to see the logic of what does and does not get approved, much less how the requests that are approved are supposed to make a better kinder Internet. My gut feel is that a right to be forgotten is not nearly as important as a right to accurate search results. If someone has posted a libelous web page about you, then you should counter it with your own page. If something from your past is haunting you, then there are ways to address that, too.
1
Aaron Novstrup's profile photoLex Spoon's profile photo
3 comments
 
I guess that must be the idea, +Aaron Novstrup. The final web site might be out of reach, but Google is a single entity and so a sitting duck. But yeah, something seems strange about having people at Google decide things like this; if it really has to happen, you'd think it was a more judicial process, rather than something like the opaque app-store approval process.
Add a comment...

Lex Spoon

Shared publicly  - 
 
So true. Further examples would be: theory and graphics in the computer science department; computer games and compilers in industry; any form of music performance. As I think I remember +Joel Webber saying it, if you want to make a profit, look for the s$!t work that needs to get done but that no one else wants to do.
The tech site Engadget directed me to this article on Visual FX and CGI as a "must-read". What I found was one of the odder economics and business hypotheses I
2
Joel Webber's profile photo
 
Absolutely true (though I owe the original insight to another Joel -- +Joel Spolsky). This helps explain low pay in game jobs, difficulty turning a profit selling compilers, and so forth.

If everyone wants to do it, then "it" is not going to be paid well. If you want to do it anyway, find something either sticky (e.g., effective branding, per the Dolby and Panavision examples in the article), or shitty (e.g., boring-but-useful integrations with other products).
Add a comment...
Have him in circles
590 people
Eugene Ryzhikov's profile photo
Mahesh Abnave (Mahesha999)'s profile photo
Johan Prinsloo's profile photo
Kamal Joshi's profile photo
Adam Rabung's profile photo
Torsten Bergmann's profile photo
jessamen espelita's profile photo
mark lowe's profile photo
Hindi craft's profile photo

Lex Spoon

Shared publicly  - 
 
Finding and fixing complicated code
It's hard to beat lines of code as a complexity metric: the subjective "complexity" of a piece of code seems to correlate very well with its length. Over the years, many other metrics have been devised and explored, but they tend to be more complicated yet ...
It's hard to beat lines of code as a complexity metric: the subjective "complexity" of a piece of code seems to correlate very well with its length. Over the years, many other metrics have been devised and explored, but they ...
1
Add a comment...

Lex Spoon

Shared publicly  - 
 
A well-deserved award. Congratulations, +Bill Venners!
We are pleased to announce that the Phil Bagwell Memorial Scala Community Award for 2015 has been awarded to Bill Venners. The award was presented in Amsterdam at the outset of Scala Days. Bill is known to Scala users as: creator of ScalaTest, a popular open-source test framework first released ...
2
Add a comment...

Lex Spoon

Shared publicly  - 
 
The answers on this one reflect a cultural bias in the Java world. If you're writing business logic, then sure, you should almost always factor things to be maintainable rather than fast. Sometimes, though, people write a virtual machine or a query engine in Java, and in such a case you eventually run into the problem that the poster describes. You'll find a small performance-critical portion of your code, and you'll discover that there are 10-20 minor variations of that code that are significantly faster if you compile a separate .class file for each one.

I'm really not sure the best way to approach it in Java. You can use text templating if you can identify all the variants at compile time. If you need to generate them at run time, then something like ASM will work well, but it gets miserable to write very much code that way.

Scala has some experimental support for this problem, via its macro system. I have to think that's part of the culture issue: people who believe in language solutions tend to drift away from using raw Java and toward using an alternate front end.
There is a source file in a rather large project with several functions that are extremely performance-sensitive (called millions of times per second). In fact, the previous maintainer decided to w...
1
Jaime Yap's profile photoRay Cromwell's profile photo
2 comments
 
If you think about it, Dagger2 is basically compile time template metaprogramming, which suggests that annotation processors are a useful middle ground for doing this kind of stuff and avoiding the pitfalls of byte code rewriting (eg android start time time, nongwt support, and poor debuggability)
Add a comment...

Lex Spoon

Shared publicly  - 
 
Uber is up there with Netflix, Google search, Wikipedia, and Fandango for taking something everyone does and making it better using the Internet. I'm sad to see it get so much opposition from various governments.

If you wanted to upgrade the taxi system to for modern technology, you'd want to heavily copy how Uber works. It's all based around your phone and around GPS, and all the payments are automated and tracked. Designing a new taxi system takes many years, though, so maybe--here's a challenging suggestion--maybe the best thing to do for now is just leave alone companies like Uber. Let them do their experiments, and let early adopters give them a try.
After days of violent protests and defiance on the part of Uber's French management, two of the company's employees were taken into custody for "illicit
8
2
Lex Spoon's profile photoStephen Brown's profile photoNoel Yap's profile photoLucas Santos's profile photo
3 comments
 
+Lex Spoon
Their French Managers are in Jail and they just showed close to a $500 million dollar operating loss...so.

Uber is easily the biggest Pump n' Dump since Enron IMHO. Riding a wave of "the government sucks" rhetoric to profits.

http://www.bloomberg.com/news/articles/2015-06-30/uber-bonds-term-sheet-reveals-470-million-in-operating-losses
Add a comment...

Lex Spoon

Shared publicly  - 
 
Hmm, if a taxi driver drives off with your laptop, what realistic way do you have to find that cab again? With Uber, you have their license plate in your phone, a button you can click to call the driver, and another button you can click to contact Uber.

Uber's way seems safer.
3
Add a comment...

Lex Spoon

Shared publicly  - 
 
It often feels we are building the world's software on sand. The prevailing answers to writing JSP in a secure way are pretty miserable. They involve explicit, cumbersome calls to escaping constructs, and if you forget to call one, it's very hard to notice that you've become insecure. I don't fully understand how such a prominent system has such a major security problem for year after year; there are ways Oracle could fix this while offering an escape hatch for legacy code that needs to be kept running. Meanwhile, JSP has lots of competitors, and the majority of those competitors are safe against the most egregious XSS problems by default.
1
Add a comment...
People
Have him in circles
590 people
Eugene Ryzhikov's profile photo
Mahesh Abnave (Mahesha999)'s profile photo
Johan Prinsloo's profile photo
Kamal Joshi's profile photo
Adam Rabung's profile photo
Torsten Bergmann's profile photo
jessamen espelita's profile photo
mark lowe's profile photo
Hindi craft's profile photo
Collections Lex is following
Education
  • Clemson University
  • Georgia Institute of Technology
Links
YouTube
Contributor to
Story
Tagline
Software engineer at Semmle
Work
Occupation
software engineer
Employment
  • Semmle
    2012 - present
  • LogicBlox
    2012
  • Google
  • IBM
  • EPFL
Basic Information
Gender
Male
We've always had good experience with Estes, both for repair and for sales. Thanks to Raymond, Patrick, and Jonathan for excellent repairs and installation, and thanks to Chris on sales for telling me what I need to know but skipping any hard-sell tactics.
Public - a year ago
reviewed a year ago
They have excellent pizza and a good selection of beer. Definitely try the "monster slice". It is cooked to order and is accurately named.
Food: ExcellentDecor: GoodService: Excellent
Public - 2 years ago
reviewed 2 years ago
2 reviews
Map
Map
Map