Watch The Inspiring Movie ‘CODEGIRL’ For Free On YouTube Until November 5th

Screen Shot 2015-11-01 at 1.36.06 PM Alphabet, which backs diversity in all facets of technology, is helping to shed light on a specific project…a film called “CODEGIRL“. It comes via filmmaker Lesley Chilcott, who you might be familiar with from her work on “An Inconvenient Truth” and “Waiting for Superman.” Countdown 2 @codegirlmovie! 12noon PT launch today on @YouTube.… Read More


via TechCrunch
Watch The Inspiring Movie ‘CODEGIRL’ For Free On YouTube Until November 5th

Start Your Halloween Right by Watching Elephants Pulverize Giant Pumpkins

Everybody has their own Halloween tradition, whether it’s taking chocolate from strangers or doing shots of vile, candy-corn flavored vodka. But the elephant family at the Oregon Zoo’s annual “Squishing of the Squash” its hands-down my favorite.

There’s something innately satisfying about four ton animals destroying half ton vegetables. And I think it’s fair to say the elephants enjoyed themselves, too.

via Gizmodo
Start Your Halloween Right by Watching Elephants Pulverize Giant Pumpkins

Every Linux Geek Needs To Know Sed and Awk. Here’s Why…

sed-awk-linux

Two of the most criminally under-appreciated Linux utilities are Sed and Awk. Although admittedly they can seem a bit arcane, if you ever have to make repetitive changes to large pieces of code or text, or if you ever have to analyze some text, Sed and Awk are invaluable. So, what are they? How are they used? And how, when combined together, do they make it easier to process text? What Is Sed? Sed was developed in 1971 at Bell Labs, by legendary computing pioneer Lee E. McMahon. The name stands for stream editor, and that’s kinda what it does….

Read the full article: Every Linux Geek Needs To Know Sed and Awk. Here’s Why…

via MakeUseOf
Every Linux Geek Needs To Know Sed and Awk. Here’s Why…

Download every ‘Tribes’ game for free

Fancy yourself a fan of playing awesome PC shooters online? Boy howdy, do I have a story for you: Developer Hi-rez Studios has released every game in its Tribes series for free on its website as part of the franchise’s 21st birthday celebration. That means everything from Starseige: Tribes to the free-to-play Tribes: Ascend is available right now, gratis. And you don’t even have to buy it a drink — the party’s on Hi-rez’s dime! As if you had any big plans for this weekend anyway.

Via: Dave Oshry (Twitter)

Source: Tribes Universe

via Engadget
Download every ‘Tribes’ game for free

Watch the First Footage of the Planet’s Most Elusive Whale

Watch the First Footage of the Planet’s Most Elusive Whale

An international team of marine biologists has made the first-ever field observations of rare Omura’s whales—one of the least known species of whales in the world — while working off the coast of Madagascar.

Omura’s whales are so rare that scientists are not sure exactly how many exist.

“Over the years, there have been a small handful of possible sightings of Omura’s whales, but nothing that was confirmed,” noted lead author Salvatore Cerchio in a Woods Hole Oceanographic Institution release. “They appear to occur in remote regions and are difficult to find at sea because they are small—they range in length from approximately 33 to 38 feet—and do not put up a prominent blow.”

Watch the First Footage of the Planet’s Most Elusive Whale

Cerchio, who works out of the New England Aquarium (NEAQ), says that all previous knowledge came from eight specimens of Omura’s whales taken in Japanese scientific whaling off the Solomon and Keeling Islands, along with a couple of strandings in Japan.

After a possible sighting near Madagascar in 2011, the team decided to relocate their efforts to the region. It proved to be an excellent move, resulting in the two year study, the details of which now appear at Royal Society Open Science.

Watch the First Footage of the Planet’s Most Elusive Whale

Five different individuals

“This is the first definitive evidence and detailed descriptions of Omura’s whales in the wild and part of what makes this work particularly exciting,” he says.

The researchers observed 44 groups and were able to collect skin biopsies from 18 adult whales. These samples were sent to Northern Michigan University for DNA analysis, the results of which confirmed the species as being distinct. Up until recently, some scientists thought that Omura’s whales were actually Bryde’s whale.

Watch the First Footage of the Planet’s Most Elusive Whale

Cerchio’s team documented various physical and behavioral characteristics of the whale.

They’re mostly dark gray, but have a prominent white patch on their right lower jaw. They lunge feed, which means they subsist on a steady diet of zooplankton. The presence of so many mothers with young calves suggests that the study site was at or near a breeding habitat where females give birth. The team was also able to make recordings of Omura’s whale song, which appears to be a male-limit trait (which isn’t unusual among whales, including sperm whales).

Read the entire study at Royal Society Open Science: “Omura’s whales (Balaenoptera omurai) off northwest Madagascar: ecology, behaviour and conservation needs”.

[ Woods Hole Oceanographic Institution ]


Email the author at george@gizmodo.com and follow him at @dvorsky. All images by Salvatore Cerchio.

via Gizmodo
Watch the First Footage of the Planet’s Most Elusive Whale

Open-sourcing Pinterest MySQL management tools

In the past, we’ve shared why you should love MySQL and how it helped Pinterest scale via sharding. At Oracle Open World today, we announced that we’re open-sourcing the vast majority of our automation that maintains our MySQL infrastructure. In this post, we’ll detail our MySQL environment, the tools used to manage it and how you can implement them to automate your MySQL infrastructure.
Basics of MySQL at Pinterest
We’ve historically used MySQL to store some of our most important data, including Pins, boards, image metadata and Pinners’ credentials.
Recently, we’ve added the following use cases:
PinLater: Thanks in part to kernel optimizations, MySQL has replaced Redis and is becoming the only supported backend for our asynchronous job execution engine.
Zen: MySQL has joined HBase as a supported backend for our graph storage engine.
For all of the MySQL use cases at Pinterest, the environment is identical from an administrative perspective:
A single master with one or two slaves: Historically MySQL was used with multiple writable instances in a replica set. This topology is error prone and has been simplified to a single master with one or more slaves.
Zookeeper provides service discovery: The contract between the administrative tools and the MySQL applications is ZooKeeper. With few exceptions, ZooKeeper provides clients with database hostnames, usernames and passwords.
The lifecycle of a MySQL instance in the cloud
MySQL servers at Pinterest are launched, live and die with only the rarest of configuration changes. Upgrading kernels, MySQL versions and any other changes that would require a restart of the database are never done in-place. Instead, these actions are always performed through server replacements and failovers/slave promotions as needed. This choice has greatly simplified our automation by removing the need to manage intermediate state. We call this mindset “Operational Buddhism,” meaning we don’t get attached to our servers, because they might be gone tomorrow.
One of our most important scripts is launch_replacement_db_host.py. In the simplest case, the only required argument to launch_replacement_db_host.py is the hostname of a failed slave. The existing instance is examined, all required parameters for a new server are computed and then the new server is launched. For other changes, such as MySQL upgrades, hardware upgrades/downgrades and datacenter migrations, there are optional arguments.
After the new server has booted and received its initial base configuration from our provisioning system, a cron job will notice that the data directory is empty and run mysql_restore_xtrabackup.py. Based on information from our service directory (ZooKeeper), this script will attempt to find a database backup, restore it, set up replication and add the new MySQL instance to the directory. Like launch_replacement_db_host.py,  mysql_restore_xtrabackup.py accepts many optional arguments for non-standard uses.
If a MySQL master server requires replacement, the mysql_failover.py script must be run to promote the primary slave to master. This script deals with either living or dead initial masters, and then modifies MySQL replication topology and updates the service directory.
After a server has been removed from ZooKeeper, it’s subject to a retirement queue system. This system has several steps that lead to eventual termination of a server:
Servers that do not exist in ZooKeeper are considered to be not in use, and will have several status counters reset.
After a day, the servers will be inspected to see if any activity has caused the status counters to increment. If the counters have incremented, the retirement process is aborted. If the counters have not incremented, the MySQL instance is sent a shutdown command.
After another day, the server is subject to termination if its database has not been restarted.
Other utilities
We’ve built a variety of other utilities that we’re also open-sourcing:
mysql_replica_mappings.py: This script provides administrators a quick view of what’s in production (we define “in production” as “in ZooKeeper”) in a format that’s easy to use for shell scripting.
mysql_backup_xtrabackup.py: This is our primary backup system for MySQL. These backups are used by mysql_restore_xtrabackup for building new MySQL instances.
archive_mysql_binlogs.py: We backup MySQL replication logs in order to perform point-in-time recoveries in the case where all servers in a replica set are lost. 
mysql_grants.py: This script manages our database users. It’s one of our oldest bits of automation and one of our most limited. It fulfills our needs for the time being but sooner or later will need to be significantly expanded.
mysql_cnf_builder.py: This script builds MySQL configuration files based on global defaults and then overrides for workload type, hardware and MySQL version. Several example configuration files are included.
mysql_checksum.py and get_recent_checksums.py: Every day, we run a pt-checksum against a subset of the shards in order to determine if master and slave are out of sync and, if so, by how much. (Most of the time, our replication drift is zero or very near zero.)  The mysql_checksum.py script runs the checksums and stores the results. The get_recent_checksums.py script will retrieve all recent checksum results and display the data in a user-friendly manner.
And a bunch more!
Not a panacea
These tools are tightly integrated into our service discovery mechanism and would likely require moderate modification of the code that reads and writes from service discovery. Unlike other technologies we’ve open-sourced, there are some legacy limitations to these utilities, such as the lack of support for more than two slaves. It’s our hope that these tools are useful to others that wish to create automation for their MySQL infrastructure.
Human efficiency
As a result of the effectiveness of our tooling, we’re able to maintain the MySQL environment with hundreds of terabyte data with less than two dedicated engineers.
The Code
Our public code repository is now live and can be found with our other open-sourced projects on GitHub at http://ift.tt/1PVjvUS
Acknowledgements: Ernie Souhrada also contributed to the MySQL management tools.
 
 
 
 
Tags: infra, opensource
via Planet MySQL
Open-sourcing Pinterest MySQL management tools