Unfortunately it's too late to edit my comment for clarification.
226 karma · joined April 11, 2014
Unfortunately it's too late to edit my comment for clarification.
As a reference point the UK has about the lowest consumer energy taxes in the EU, and the highest consumer prices.
> This guide shows how you can launch a full functional Jenkins server in one minute And then configure this Jenkins works with you Github account.
> I will spend my last dying breath if I need to, and I will spend every penny of Apple’s $40 billion in the bank, to right this wrong,” Jobs said. “I’m going to destroy Android, because it’s a stolen product. I’m willing to go thermonuclear war on this.
The primary strategy appears to have been to use IP courts to make Android undistributable rather than competing directly, as Apple have no interest in capturing the bottom 90% of the mobile market. The Oracle v Google case is probably part of the same campaign.
e.g. https://www.oecd.org/eco/growth/NERO-22-June-2015-income-ine...
Maybe they're testing AI-generated content?
e.g. top hit on google: http://smallbusiness.chron.com/write-short-bio-yourself-5728...
I'm not explaining things well I think, hope you can make sense of that!
If I'm missing a "wider point", can you elucidate?
You're not considering that food has a limited shelf life, seasonal, difficult to distribute efficiently and the customers have highly variable purchasing powers. Also local production is incredibly sensitive to local environmental variation. We already produce enough food to feed nearly twice the global population, and yet plenty of people are malnourished.
I would personally suggest that the best way to prevent famines is to improve food storage and distribution methods, and have robust systems for environmental or conflict induced local famines. Though the unbalanced nature of consumer wealth is also important - it makes sense to waste 50% of your crop selling it in Europe if you can sell it for 3x as much than locally. So maybe the best thing is simply to raise the wealth of poorest people in the world?
Though we've rather ruined the twist ...
Just for your info this isn't what happened, it's Ireland's tax money. The EC doesn't collect taxes. Instead the EC ruled that Ireland was providing illegal state aid (under EU rules) to Apple through its tax arrangements. So this loophole was nullified and Apple have to pay the back taxes to Ireland. The EU gets nothing (the EC is the executive body of the EU).
This investigation into dodgy corporate tax deals has nothing to do with Brexit (note that this is about Ireland, not the UK), and it's been going on for most of a decade now.
They really should provide a "Is my number listed?" search (and maybe a "Who do I blame if it is?"). Also, they should probably add some verification you own the number I guess, since I was able to delist my wife's without question.
:) "perl harbor", very HN typo ...
Non-coding just refers to not being translated to protein, and we know (as you list, more for the benefit of others) that there are many non-coding functional elements.
Junk DNA is non-conserved DNA (e.g. shows only neutral selection). And if it's not being selected for or against, then it probably doesn't have much effect either way.
What has gained a lot of attention was the massive ENCODE project, which sought to provide a detailed atlas of biochemical function in the human genome. The headline figure from there has been that 80% of the human genome has some function. There's a lot of controversy (understatement hat on) on the basic experimentation done for ENCODE, the structure of the project, the usefulness of the data produced and how they define biological activity.
The debate possibly got a bit out of control - the most sarcastic peer reviewed article I have ever read stirred the pot a bit (for more info: http://www.scilogs.com/next_regeneration/the-encode-controve...). I think most biologists (warning, personal opinion) would still hold that 80% of the genome is not meaningfully biologically functional.
So for a while it didn't support use cases as well as various NoSQL/NewSQL databases. However, PostgreSQL has also been built by great bunch of developers who are happy to adapt and implement the new, instead of harping on about the past.
So personally I adapt that advice to instead "use evidence to guide decisions".
However, it actually makes it seem to me that even more so Perl 6 makes the same "mistake" as Perl 5. The surface area of the language now seems fractal in complexity, and unless rigorous discipline & best practices are applied it's going to be very hard to build working complex projects. So great for individuals, very powerful for highly disciplined teams, but not good for the below average programmer - as 90% of biologists are. Perl 5 was full of magic, but in the hands of most biologists & less disciplined bioinformaticians that was a bad thing.
Take that SQL Slang example, great for quick scripts, but it's seems a long long way from a production ready library that can be used in a complex application. And maybe I just don't see the great advantage in being able to hide a couple of lines that make it exactly clear about what you're doing. If I'm maintaining code I want to see those explicit statements if possible. And really it's not exactly a big win over "&sql($statement)".
Anyway, it's interesting and luckily I can observe from a distance now.
Then we ban them from using flat files. Related tables or nothing. I've wasted too much time, and they're not competent enough to work with JSON/XML/Excel.
As for the Perl 6 features, I had already looked at the list and was hoping you may have some insight as to why these might be killer features for bioinformatics in particular. e.g I know what currying is, but I don't think most computational biologists will care. I actually can't see anything there that says, "Science, do it here".
Julia is a very promising language due to its focus on mathematics, readability & performance and seems to be gaining traction. R has an unbeatable set of statistical libraries. Python is now deeply embedded and has IPython, and links back end to web very nicely. C/C++ & Fortran are are miles out in front for number crunching. Java is excellent for reusable code and distributed development, and can be used in almost any layer and has proven very difficult to dislodge as the general purpose language. At the moment I don't see a niche being available to Perl 6, unless something really useful for scientists (like IPython notebooks) is brought to the table. If they really backed it as a parsing language, and provided some really sweet tools for handling biological data files - e.g. something more like an interactive IDE rather than having to write out a script in emacs. Actually give me that, I'd be very happy. But I honestly think it's the associated tools & ecosystem which will determine if Perl 6 can succeed, not a laundry list of features.
And will it ever come out? :) I remember going to a Perl learning course in 2002 where the instructor was very excited about the new version 6, which was going to be out by 2004.
There is a general problem I think though, and other people have experienced the same. I've been trying to reason why, but I think it's due to multiple factors. By the time you've managed to get that bit working reliably with BioPerl you could have written it yourself. And it would be faster and use less memory. BioPerl has the problem of trying to solve every case, whereas normally I'm working with a limited subset of possibilities.
So why? I think it's a combination of dodgy, manually hacked inputs (e.g PDB files!), the learning curve, poor backwards compatibility preventing upgrading, and, ah I don't know. Every time it's seemed like a good idea, and yet every time I've ended up abandoning BioPerl. Maybe it's too integrated with itself as a library of functions?
Take parsing a FASTA. By the time I've read the BioPerl documentation, I could have already written that one line split string statement (because I e.g. know in advance the sequence string is always on one line). It's hard to overcome that laziness and make the commitment to learn it and become fluent in it.
The Grammar system does look quite nice. Parsing is definitely a Perl forte - though I seriously hope bioinformatics in general will continue to abandon these crazy formats that can't be read easily by humans or machine.
I'm going to have speak subjectively and relative to my own skills here. Without rigorous use of standards Perl 5 is a nightmare to read. With very clear and consistent style then it can be readable, but this has to be enforced extremely strictly for any code base beyond trivial. Perl's 100 ways to do things is not a positive in this context.
Case in point, I was given a bit of perl two weeks ago by a bioinformatics lecturer. Did not use strict or warnings; variables weren't declared in scope; no subroutines, let alone Moose objects. And this is typical of ~90% of bioinformatics perl that gets written. What's more, it was a trivial script that was simply parsing some BLAST matches from CSV, checking for overlaps and assigning a type based on the match gene combination - and was completely indecipherable. It took me two days of refactoring to pick out all the details. And he managed to use a couple of magic symbols I'd never seen before.
The first time I was given a bit of python, without learning the language at all, I was able to extend the script and get it do some new things (it was considerably more complex than the aforementioned perl script).
And even when it is well written and documented - I did work with some very good perl programmers - it's tended to end up as very fragile and difficult to extend or even substantially redevelop due to the heavy use of context for determining behaviour (and the actual context can be difficult to determine). Unit testing had to be very extensive since it was difficult to isolate changes.
I'm going to have to be precise here - I'm attacking Perl 5. It just seemed from that section that Perl 6 doesn't solve the major problem (difficult to deduce the context and work out the resulting effect) I had with Perl 5. I may be completely missing the mark and actually readability is much better. I really hope so.
>> Perl 6 isn't production ready yet. But even a cursory glance over the features tells, Python isn't even in the same league of tools Perl 6 will be.
Vapourware is vapourware. Perl 6 was meant to be production ready a decade ago. On the other hand, I'm interested in knowing what you think Perl 6 brings that will give it the edge over Python? Do you see it displacing Python as rapidly as Python replaced Perl 5 as the science "glue" language of choice? With the apparent rise of Julia as well, could it just be too late?
On a personal viewpoint: "Take a look at the REPL dump below and see if you can work out where we are implicitly using $seq as a Str rather than Seq:" - this section pretty much sums up why I've always hated working with Other Peoples' Perl. To accurately follow someone else's perl requires either an encyclopedic knowledge of the language and it's edge cases or very heavy documentation and a set standard of coding practices. It's a shame that this looks true for Perl 6 as well.
Great for personal use, I guess. But by and large I'm glad to see more projects switch over to python.