Tuesday, 4 September 2012

Getting a list of upcoming events from GCal


The aim is to email myself a list of all events in my calendar(s), along with 'days until...', to help me plan for upcoming events better.

I'm using Perl, because of CPAN.

So far, I've managed to connect and get event data.

  • UPDATE, events now limited to future events.
  • UPDATE, 'all' (10k) events now retrieved.
  • UPDATE, the number of days remaining is now calculated.


See:
1) http://search.cpan.org/~plytle/Net-Google-Calendar-1.01/lib/Net/Google/Calendar.pm
2) http://search.cpan.org/~plytle/Net-Google-Calendar-1.01/lib/Net/Google/Calendar/Entry.pm


Here's the code:
http://github.com/dbolser/GCal-Upcoming

Monday, 2 July 2012

SQL of the day


SELECT
  TABLE_SCHEMA                                    AS "Data Base Name",
  SUM( DATA_LENGTH + INDEX_LENGTH ) / 1024 / 1024 AS "Data Base Size in MB"
FROM
  information_schema.TABLES
WHERE
  TABLE_SCHEMA IN
(
  SELECT
    SCHEMA_NAME
  FROM
    information_schema.SCHEMATA
  WHERE
    SCHEMA_NAME LIKE '%variation%'
)
GROUP BY
  table_schema
;

Friday, 20 April 2012

Gfail (and how to fix it)

As we all know, hate is the only legitimate emotion on the internet...

I really hate that Gmail has the audacity to assume it deserves two thirds of the screen width. Generally, I like to keep windows narrow, and normally that's fine. But noooo, Gmail is better than other webpages. Gmail is special...

The problem is, when I shrink the Gmail window down below a certain width, it decides to hide the vertical scroll bar... Google... It's a scroll bar... how could you fuck it up? They found a way!

Since I already use AdBlock* I was seeing a massively annoying empty white bar on the right of my emails, making it even more annoying that Gmail chooses to hide the scroll bar when I tried to shrink the window to remove this wasted space. Seriously... It's a fucking scroll bar! Why...

Anyway, the solution is to install the Minimalist App*, which lets you conveniently 'Hide Sidebar'. This removes all that crap on the right hand side of your emails, reclaiming about one third of the width of the Gmail window for, you know, THE CONTENT OF THE FUCKING EMAIL!!!

You can also hide all that +1 crap that they force down your throat too, and a bunch of other annoying stuff. It's really a great App!

Of course all this will break when Google decide that their current design isn't hogging enough of your screen as it is, but hopefully it can be repaired quickly by nice people like the authors of the above Apps. 


Thank you!

* Wow, I really hate that 'overlay' design on the Chrome Web Store!

Monday, 12 March 2012

Scientific Linux 6.1 - Notes

# I couldn't find tons of packages, until:
yum install epel-release

# See:
http://www.scientificlinux.org/distributions/6x/features/differences
  • "To reduce duplication, version and dependency problems, and create less confusion, we have reduced the number of extra packages we put in Scientific Linux 6."

# For safeties sake I decided to disable this repo:
sudo yum-config-manager --disable epel

# and only enable it when I can't find something, e.g.
yum --enablerepo epel search sshfs

# and
sudo yum --enablerepo epel install sshfs



# This is cool:
curl whatismyip.org



Sunday, 5 February 2012

Time to update your MediaWiki?

Newer versions of MediaWiki get better and better (see the release notes). I'm constantly impressed with this project. It produces a slick**, usable, and 'web-scale' (yes, I said web-scale) software for free, and runs perhaps the most important resource on the internet.
        ** Easy to install, configurable, language independent, easy to upgrade, easy to extend, and extend, ...

Newer versions are not only easy to install, add constantly improving usability and functionality, but also fix important security issues (more info, more reasons). There are only two or three real reasons not to update (and they are all arguable):

  • You forked the codebase instead of using (or developing) the extension mechanism (silly you!), or
  • You rely on functionality provided by an extension that is incompatible with newer versions of MW (poor you!), or
  • You work in a production environment with an old version of PHP, and upgrading PHP is likely to be problematic.


However, (politely?) asking people to update in no uncertain terms can result in being slapped down...

Subject: Re: Dear wiki owners

Date: Thu, 14 Apr 2011 12:20:57 +0200
Cc: Everyone I was pestering
To: Dan Bolser 

Dear Dr. Bolser,

I hope you must be joking.

Although we are happy to collaborate to the best of our abilities and resources with any project that might benefit from it, I object to the arrogant tone of your message. Our XXXwiki web site is functional and we do have to juggle many priorities in our development work. If we can upgrade our system without breaking it, we will consider doing the upgrade quickly.

In the future, I do suggest that you approach people you don't know personally in a more diplomatic way. It might be just as helpful for the people you know personally too.

In the meanwhile, do whatever you please with the BioWiki catalogue.

Sincerely,

Xxxx Xxxxxx



On 14 Apr 2011, at 00:41, Dan Bolser wrote:

> Hi all,
> 
> Just a quick weekly reminder that your wikis, XXXwiki, XxxxxxxWiki,
> XXXX wiki and Xxxxxxxxxxx, are woefully out of date and/or chronically
> and needlessly broken (see below).
> 
> I'm happy to take good excuses or to remove your sites from the
> BioWiki catalogue. Until then, I'll probably keep sending weekly
> reminders.
> 
> 
> Faithfully,
> Dan Bolser.



Yeah... I guess I over did it.

DNA as a digital data storage medium

This was an idea to use DNA to store data, since it's now very cheap to sequence DNA. In the same way people use magnetic tape for long term storage, you could back up to DNA...

The idea was developed with the help of Utopiah, Kanzure, and others in irc://irc.freenode.net/##hplusroadmap

and was added to the awesome (but sadly now historical) Seedea project, here:
http://fabien.benetou.fr/innovativ.it/www/HistoricalArchives/Seedea/Oimp/MetaDNA

where details were thrashed out by various people.

This idea depends on DNA printing technology.





EDIT: Here is the text from the Seedea page (around 2009)



metaDNA

General discussion

use the dedicated page.

Goal

To encode data as DNA, allowing the storage of vast quantities of data 'in a cupboard'. Advantage: we get massive data transfer rates by shipping DNA (e.g using UPS).

Abstract

New advances in DNA sequencing technology promise to revolutionize the fields of biology and health care. The human genome project, initiated in 1990, took just 13 years to complete at a cost of approximately $3 Bn [cite HGP]. Today, obtaining the complete sequence of an individual costs 100,000 times less at approximately $30,000, and takes approximately 1 day to obtain [cite 1000 GP]. The acceleration in the progress of DNA sequencing technology shows no sign of slowing. It is estimated that capacity increases by a factor of 100 every year [cite Richard Durbin, personal communication].
However, these phenomenal technological advances in the field of molecular biology, they have created a new bottleneck in the scientific discovery pipeline. Namely, the cost of data storage.
DNA can store 1021 bits per gramhttp://www.sciencemag.org/cgi/reprint/296/5567/478.pdf. This compares favorably with conventional storage at around 1014 bits per gram, (blu-ray: 200GB/16g) for a one-million-fold improvement. How to effectively utilize this awesome storage capacity?
Here we propose an alternative storage medium for long term archival of data, DNA. We present a DNA encoding algorithm that is optimized for data recovery, outline a novel design for a microfluidic DNA sequencing chip and describe a DNA protectant that will allow for long term storage of DNA in ambient conditions.

Problem abstraction

The problem with 'next generation' DNA sequencing (nextGen) is that it is too good. The technologies are generating too much data too quickly. Simply put, we don't have enough hard disks to keep pace with the data storage requirements.
How do you cope with this situation?

In situ example

  1. Company A gather a sample S from a living organism
  2. Company A studies it and produces a result R that is a very large amount of data including specific DNA samples (original and modified)
  3. Company A works for a Client K that requires additional work on R and eventually S by company B
  4. R+S are information that needed to be shipped as fast as possible by A to B
  5. We encode R+S in P thanks to our specific method and ship it to B

Proposed solutions

Design a 'DNA encoding' that maximizes ease of reading
  1. the DNA encoding - lots of check sums and handling of repeat regions
  2. the 'DNA protectant molecule that we use to store data at rtp

Complete process

  1. ?
  2. design a micro fluidic dna sequencing chamber
  3. ?

Opportunity

microfluidics is getting very cheap, so its easy to design and print a 'chip' that will control the flow of ATCG into a reaction chamber.

Business model

  • cost optimization to advertize during the difficult time of "pipe cloging" and energy cost (logistic, network congestion)

Market and trends

  • Familybuilder DNA on Sale: Familybuilder Introduces Low Cost Testing
  • AsperBio How to send DNA samples?

Alternatives

  • efficient data compression. One human is much like another at the genetic level. Perhaps we can simply compress the data produced by the personal genomics initiative (for example) against a 'reference' genome.

To explore

  • "retarded polymerase"

References

  • article A from X written by Y on date Z
  • book A from X written by Y on date Z
  • ...

Important related patents

Relations that would be interested

  • Paola (positive about the idea but doubtful about the ethical or moral slippery)
  • Laurent (feedback yet to ask)
  • Kenza (feedback yet to ask)
  • Contacts from KAO (genetic engineering in the BayArea)

Marketing

Project name

  • metaDNA doesn't really sums it up.
  • EnCodeMe
  • DNAStore
  • DNA bank
  • Molecular Storage
  • DNCode
  • DNAta
  • DNA backup
  • DNA Storage
  • DNA data
  • DNA backup
  • backDNA
  • DNAstics
  • DNA Logistics

Tag line

DNA is a fantastic storage medium. It has a track record of 4 billions years.
DNA, it'll store your ass off.

To explore

SEQwiki ontology integration



TBD...

I need to read, digest, and implement information from these sources:
* http://semantic-mediawiki.org/wiki/Help:Ontology_import
* http://semantic-mediawiki.org/wiki/Help:Import_vocabulary

Hmm... if smw.org is still down, use cached versions:
http://www.google.com/search?q=semantic+mediawiki+ontology