Archives for : February2013

What Can Scientists Do With Code?

1. You are a scientist by training. Why learn to code?

I’ve always been interested in how computers and software work, so I try to use programming in my work as a scientist as often as I can.

2. How have you used code in the lab?

I wrote my own applications after taking the HTML/CSS and jQuery lessons, which helped my colleagues and I a lot in our workflow. These applications are about manipulating strings of DNA and amino acid sequences: Splitting sequences in defined lengths, extracting subsequences, and converting into other file formats.

I later wrote some useful tools in Python to facilitate my everyday work — especially the tedious and repetitive tasks. I really enjoyed the process of coding itself, and when the program was ready to do its work, it was just a great reward.

3. What’s an example of how a scientist could use code?

Scientists could write their own scripts to speed up the data preparation and evaluation process, while decreasing the rate of error if certain tasks have to be repeated. Tons of data are generated every single day and most of it is made available to other scientists online — they just need the right tools to work with it!

In the natural sciences, basically everyone does some sort of statistics. Coding can also be useful if a particular file format must be converted and the software for this task does not exist, yet. As a person who knows how to code, you will be probably able to pull up a script to do this in no time.

4. What about non-scientists?

There are many simple tasks in your daily life, for example if you’ve written a chapter of a novel and want to count how often a particular word occurs. Or let’s say you are planning a board game night and cannot find the dice (this actually happened to me) – impress your friends with a digital die simulator! This is one that I wrote in Python.

5. Any parting advice?

My motto is: “If there is a tedious task that you have to repeat more frequently than you like, write a script to let it do the job for you!” This does not apply to any task of course, though it would be nice to have a program that reads your emails every day and writes proper responses.

Want to learn to automate your work? Start learning Python.

More APIs for Your Apps

Last month, we started hosting lessons on APIs to teach people all over the world how to harness the power of real web apps. Codecademy users have integrated videos into their websites, called/texted friends, shortened URLs, and much more. With Codecademy, we think we can bring the power of programming to everyone. That’s why we’re working with more companies you likely interact with every day in order to show you how programming can affect your workflow and daily life. Use Twitter? So do tens of millions of other people. Most of those people tweet from the Twitter app. With today’s new courses, you can tweet from Codecademy or write your own cool scripts that tweet on certain triggers. That’s just the beginning.

With these new API offerings, you’ll be able to:

Control the cloud. With courses from Box and SkyDrive, you’ll be able to store and access files from anywhere in the world. Authenticate with other apps using OAuth. These days, countless web applications (including Twitter and Facebook) use OAuth to authenticate users. Let GitHub be your guide to the OAuth2 protocol. Become a consummate consumer. Find the latest fashions with Gilt, the best restaurants from Ordr.in, and pay for it all with Dwolla.

And much more!

Whether you’re looking to learn an API that will underlie your web app or you just want to pull in some data for your site, you’ll find a ton of useful, customizable, and fun services in our latest batch of API lessons. Our partners have worked hard to bring you a host of new tools to integrate into your own projects—check them out!

(And if you’re interested in teaching your API, please don’t hesitate to get in touch with us.)

Want to change careers? Learn to code

Dissatisfied with her job, Dilys quit and began learning to code. Now she’s ready to make the move she wants. » Read more

Back in Action

Thanks to all of our users for bearing with us this week with our downtime and database issues. We’ve worked nonstop the past couple of days to make sure the site is up, functional, and behaving like it was before the downtime. A very small number of users are still affected, and we’re working with each and every one of them on a case-by-case basis to make sure they’re happy with their profiles. We thought our downtime could be a learning experience for everyone – I wanted to let you in on what happened in the aftermath as well.

RECOVERING FROM DATA LOSS

After we had our database issue, we pieced together the data from last week using backups and with the help of some of our external service providers that had cached copies of submissions, posts, achievements, and more. Our entire engineering team worked shifts for 36 hours straight to pull data out of our backups and prepare a fixed version of our database for when the site came back online.

Thursday evening at 6 or 7pm, after a little more than 5 hours of downtime, we decided not to bring the site up until we were confident we had restored the majority of users’ progress, points, and badges. We spent the next 11 or 12 hours working on that (all hands on deck).

Thursday morning, we brought the site back with almost all of the data we were able to restore. Most users were unaffected and saw no issues after the site came back up. Linda and Karen, our community management team, designed a form for people to report issues. Ryan, Codecademy’s cofounder and CTO, put up a blog post explaining the reasons behind the downtime. Lots of users reported no problems and offered to lend a hand to help out – thanks! It’s amazing to work with such a receptive and helpful community.

SWEATING THE SMALL STUFF

After bringing the site back online, we dedicated Thursday and Friday to working with our users to recover their data based on the feedback we got through email, Twitter, Facebook, and the form we designed. We know how important progress, points, and badges are to our users, so we have spent the past couple of days getting everything back to normal. Tonight, we’re running a final script and the site will be down for 15 minutes as we add in a small amount of data that should affect only a handful of users.

We know downtime is not good for our users and we are not proud of it. That said, it happens to everyone. Great companies we admire like Etsy and Twitter have had downtime issues in the past. What’s most important is how they handle themselves afterwards.

Everyone who was affected by data loss will get a special Codecademy badge.

BUSINESS AS USUAL

Thanks for bearing with us after this outage. Going forward, we’ve implemented a lot more policies internally to make sure this never happens again. We’ve increased our daily backup schedule and, in some cases, started backing data up more frequently. Our backups are redundant across several data sources. After this experience, we’ve practiced how to recover from many circumstances – data loss, downtime, etc. We want you, our users and learners, to be confident that Codecademy is the best place to learn to code whenever you want to learn. We’re back to building new features and working on old ones – check back next week for more announcements!

Meta Slider

The most popular WordPress slider plugin. Creating slideshows with Meta Slider is fast and easy. Simply select images from your WordPress Media Library, drag and drop them into place, set slide captions, links and SEO fields all from one page. You can choose from 4 different slideshow types (Flex Slider, Nivo Slider, Responsive Slides & Coin Slider) and use the provided shortcode or template include to easily embed slideshows in your blog.

Includes

  • Flex Slider 2 – Responsive, 2 transition effects, carousel mode
  • Nivo Slider – Responsive, 16 transition effects, 4 themes
  • Responsive Slides – Responsive & incredibly light weight
  • Coin Slider – 4 transition effects

Features

  • Simple, easy to use interface – perfect for individual users, developers & clients!
  • Create Responsive, SEO optimised slideshows in seconds
  • Unrestricted support for Image slides (supports caption, link, title text, alt text)
  • Full width slideshow support
  • Drag and drop slide reordering
  • Admin preview
  • Intelligent image cropping
  • Set image crop position
  • Built in Widget and Shortcode
  • Loads of slideshow configuration options – transition effect, speed etc (per slideshow)
  • Fully localised
  • WordPress Multi Site compatible
  • Compatible with translation plugins (WPML, PolyLang & qTranslate)
  • Extensive Developer API (hooks & filters)
  • Fast – only the minimum JavaScript/CSS is included on your page
  • Free basic support (covering installation issues and theme/plugin conflicts)
  • Lightbox support with the Meta Slider Lightbox addon

Upgrade to Meta Slider Pro to add support for:

  • YouTube & Vimeo slides
  • HTML slides
  • Layer slides with CSS3 animations & HTML5 Video backgrounds
  • Dynamic Post Feed/Featured Image Slides (content slider)
  • Custom Themes
  • Thumbnail Navigation
  • Premium Support

Read more and thanks to:

Find out more at https://www.metaslider.com

Follow us on Twitter: @wpmetaslider

The easy way:

  1. Go to the Plugins Menu in WordPress
  2. Search for “Meta Slider”
  3. Click “Install”

The not so easy way:

  1. Upload the ml-slider folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Manage your slideshows using the ‘Meta Slider’ menu option

Documentation

How do I include a slideshow in the header of my site?

Video Guide:

Text Guide:

You will need to paste the “Template Include” code into your theme (you can find this in the ‘Usage’ section underneath the slideshow settings)

  • Go to Appearance > Editor in WordPress
  • Edit a file called ‘header.php’ (or similar)
  • Find the correct place to add it (for example above or below the logo)
  • Paste in the code and save.
I only want to show the slideshow on my homepage, how can I do that?

Add the ‘restrict_to’ parameter to the shortcode, eg:

[metaslider id=XXX restrict_to=home]");

Theme specific instructions:

https://www.metaslider.com/documentation/theme-integration/

It’s not working – what can I do?

Check out the troubleshooting page here:

Troubleshooting

Meta Slider is cropping my images in the wrong place – what can I do?

See https://www.metaslider.com/documentation/image-cropping/

3.5 [13/03/17]

  • New slides will now be added as a new post type (ml-slide) (existing slideshows and slides will be unaffected)
  • Workaround/Fix: Don’t use WP_Image_Editor to load slide images that are missing metadata (invalid images)
  • Fix: Load admin JavaScript in footer
  • New: Add “metaslider_after_resize_image” action

3.4.2 [16/01/17]

  • Workaround/Fix: Don’t use WP_Image_Editor to load admin slide thumbnails, use wp_get_attachment_image_src instead. Attempts to fix white screen issues affecting some users. Related: https://core.trac.wordpress.org/ticket/36534
  • Fix: Load admin JavaScript in footer

3.4 [04/01/17]

This is the first in a series of small updates which will eventually allow us to remove restrictions in the plugin which prevent us from implementing certain functionality, including:

  • Changing a slide image
  • Using unique captions when the same slide has been added to more than one slideshow
  • Adding the same slide to a slideshow multiple times
  • Duplicating slides and sliders
  • Drafting slides
  • Scheduling slides

We are releasing this update in a number of small stages due to the number of users Meta Slider has. We are being overly cautious to ensure it’s a smooth transition. This update does not make any major changes to the current plugin functionality, but it does put in place the “scaffolding” code which we will rely on to implement further updates.

3.3.7 [06/05/16]

  • Fix: “Maximum level reached” error when inserting the shortcode for a slideshow into it’s own caption. Thanks to Zhouyuan @ Fortinet for reporting this.

3.3.6 [14/12/15]

  • Fix: Save Spinner

3.3.5 [22/09/15]

  • Prepare plugin for WordPress.org translation project (rename textdomain from ‘metaslider’ to ‘ml-slider’)
  • Small styling fix

3.3.4.1 [29/07/15]

  • Fix Roots theme CSS conflict

3.3.4 [16/07/15]

  • Add HTML5 validation by applying a property=”stylesheet” attribute to meta slider CSS tags
  • Remove unused “Resource Manager” code
  • Chinese language pack updated (thanks to mamsds!)

3.3.3 [11/06/15]

  • Ukrainian language pack added (thanks to mister_r!)
  • Fix: Meta Slider hoplink incorrectly adding parameters to filtered url
  • Add “metaslider_attachment_url” filter

3.3.2 [16/04/15]

  • Fix: FPD Security issue. Thanks to Ole Aass (@oleaass) for finding and disclosing this issue.

More information:

The fix will prevent some servers (configured with ‘display_errors’ set to ‘on’) from disclosing the full path to certain files within Meta Slider.

https://codex.wordpress.org/Security_FAQ#Why_are_there_path_disclosures_when_directly_loading_certain_files.3F

3.3.1 [23/03/15]

  • Fix: Remove ‘create video playlist’ option from Media Library (on Meta Slider page only)
  • Fix: Support for Enhanced Media Library plugin
  • Fix: Return public slide when DOING_AJAX
  • Improvement: Use admin actions to save slideshow settings

3.3 [17/02/15]

  • New feature: Smart pad option (for Image Slides & Flex Slider only)
  • Portuguese language files added (thanks to mauro.mascarenhas)
  • Russian language files updated (thanks to asidoryak)

3.2.1 [16/12/14]

  • Change: Change slide image functionality backed out
  • Fix: Apply FireFox mobile fix to Flex Slider (github #1110)

3.2 [26/11/14]

  • New feature: Change slide image (click top right of slide thumbnail)
  • Update: German language files (thanks to Ov3rfly!)

3.1.1 [21/10/14]

  • Fix: restrict_to shortcode parameter
  • Change: Add metaslider_flex_slider_list_item_attributes filter

3.1 [14/10/14]

  • New feature: Ajax delete slide (to stop users from losing changes when deleting a slide)
  • New feature: restrict_to shortcode parameter now accepts page IDs
  • Update: Change icon
  • Fix: Minor admin styling fix
  • Fix: Hide share buttons for pro users
  • Change: Remove upgrade nags from media library, add Go Pro page (with an option to hide the page)

3.0.1 [19/08/14]

  • Fix: Escape admin setting text fields
  • Fix: Escape admin tab names (thanks to Dylan Irzi for spotting and reporting this!)
  • Change: Allow shortcode parameters to be filtered

3.0 [30/07/14]

This is not a major update. We’re just following the WordPress versioning conventions (3.0 comes after 2.9)

  • New feature: Set crop position for slides (requires WP 3.9+)
  • New feature: Disable cropping setting
  • Fix: Use get_posts instead of WP_Query to extract slideshows (fix conflicts with plugins using get_post_type in admin_footer hooks)
  • Change: Add filter for capability required to use meta slider

2.9.1 [15/07/14]

  • New feature: Hungarian Language Pack added
  • Fix: Escape attributes and JS in slideshow output (credit to jwenerd!)
  • Fix: Escape attributes and text fields in admin
  • New feature: Admin slide tabs can be modified with filters

2.9 [25/06/14]

  • New feature: Japanese Language Pack added
  • New feature: Persian Language Pack added
  • New feature: Switch between tab and list view
  • New feature: Added ms-left and ms-right css classes to align slideshow to left or right
  • Improvement: Flex Slider updated to 2.3.0-bleeding (fix initial image fade)
  • Fix: reference to window.parent in media library
  • Fix: Thumbnail outline in firefox

2.8.1 [28/04/14]

  • Fix: All in One Events Calendar conflict fix (Advanced Settings not toggling)
  • Fix: CSS resets to avoid theme conflicts
  • Fix: Autoload visibility conflict (https://wordpress.org/support/topic/autoload-visibillity-conflict)
  • Fix: Layer Editor in IE11 – text fields not accessible in modal windows
  • Fix: FlexSlider IE11 Fade transition

2.8 [28/04/14]

  • New feature: Russian Language Pack added
  • Fix: Carousel image scaling in FireFox
  • Fix: wpautop issue with double ampersand
  • New feature: Shortcode parameter added to restrict slideshow to displaying on homepage only (see FAQ)
  • Improvement: Save slideshow after reordering slides
  • Fix: PHP Warning when no slideshows have been created

2.8-beta [16/04/14]

  • Improvement: Preview now uses admin-post action
  • Improvement: Classes are now auto loaded to reduce memory footprint
    (Thanks to Viktor Szépe for the above suggestions!)
  • Improvement: Slideshow initilisation time reduced
  • Improvement: HTML5 Compatibility: Alt tags always present on image tag – even if empty.
  • Improvement: Flex Slider slideshows should now ‘reserve’ a space for themselves while they fully load
  • Update: Flex Slider updated to v2.2.2
  • New feature: Romanian Language Pack added (Thanks to Octav Madalin Stanoaia)
  • New feature: Dutch Language Pack added
  • New feature: WP Super Cache compatibility – cache is cleared when saving slideshow
  • New feature: HTML5 Compatibility (Experimental). Set define('METASLIDER_ENABLE_RESOURCE_MANAGER', true); in wp-config.php to move Meta Slider link tags head of the page.

2.7.2 [25/03/14]

  • Fix: Only apply carousel margin to slides
  • Fix: Enqueue Easing library when carousel mode is enabled, regardless of effect selection
  • Fix: Thumbnail margin when theme has #content div

2.7.1 [19/03/14]

  • Fix: Remove easing parameter when effect is set to fade
  • Fix: Navigation options greyed out in IE
  • Fix: qTranslate captions not being processed (typo)

2.7 [18/03/14]

  • New feature: Crotatian Lang pack added
  • New feature: Carousel margin option added
  • New feature: Process shortcodes in captions
  • Improvement: Tab rename UX
  • Improvement: Admin save spinner functionality improved
  • Improvement: CSS Resets updated
  • Improvement: Use plugins_loaded action to initialise plugin
  • Fix: PHP Warnings when one slideshow exists
  • Fix: Smart Cropping sometimes not returning smart cropped image
  • Fix: Add z-index to meta slider, attempted conflict fix for themes with drop down menus.
  • Fix: Only include the easing library when transition effect is set to slide
  • Fix: White Label Branding plugin compatibility.
  • Change: “Responsive” option renamed to “R. Slides”. The (old) “Responsive” option refers to the “Responsive Slides” jQuery library, but users were getting confused as the naming suggested it was the only responsive option. Flex Slider & Nivo Slider are also responsive.

2.6.3 [23/01/14]

  • Improvement: Various admin screen styling improvements
  • Fix: Add ‘ms-‘ prefix to Advanced settings toggle boxes and Preview button (avoid theme conflicts)
  • Fix: RTL fixes
  • Improvement: Filters added for complete slideshow output
  • Improvement: Filter added for slide image label
  • Improvement: ‘No Conflict’ mode refactored
  • Improvement: ‘slider’ parameter added to flexslider before/start/after etc callbacks
  • Change: Renamed in admin menu from “Meta Slider Lite” to “Meta Slider”

2.6.2 [02/01/14]

  • Fix: Vantage background image tiling

2.6.1 [31/12/13]

  • Fix: Advanced settings arrow toggle
  • Fix: All in one SEO / Page builder / Meta Slider conflict
  • Fix: NextGen “Insert Gallery” conflict
  • New feature: Norwegian language pack added

2.6 [19/12/13]

  • Fix: Typo in metaslider_responsive_slide_image_attributes filter
  • Fix: Caption not working in Nivo Slider
  • Fix: Tab styling improved
  • Fix: New window styling improved in WP3.7 and below

More info/Comments: http://www.metaslider.com/coming-soon-meta-slider-2-6-free/

2.6-beta [15/12/13]

  • New feature: Interface update for WordPress 3.8 admin redesign
  • New feature: ‘Stretch’ setting for full width slideshows
  • New feature: No conflict mode
  • New feature: ‘Add slider’ button for posts and pages
  • New feature: SEO options (add title & alt text to slides)
  • Change: CSS is now enqueued using wp_enqueue_style (Use a minification plugin or caching plugin to move styles to the if HTML5 validity is required – eg W3 Total Cache)

More info/Comments: http://www.metaslider.com/coming-soon-meta-slider-2-6-free/

2.5 [25/11/13]

  • Fix: JetPack Photon conflict
  • Improvement: German Language pack added (thanks to gordon34)
  • Improvement: Chinese language pack updated (thanks to 断青丝)
  • Improvement: MP6 styling fixes

2.5-beta2 [14/11/13]

  • Fix: Vantage theme backwards compatibility
  • Fix: Flexslider anchor attributes filter

2.5-beta1 [12/11/13]

  • Fix: Center align slideshow

2.5-beta [12/11/13]

  • New Feature: ‘percentwidth’ parameter added to shortcode to allow for 100% wide slideshows
  • Improvement: Generate resized images through multiple Ajax requests on save (blank screen fix)
  • Improvement: IE9 admin styling tidied up
  • Improvement: Filters added to add/change attributes in and tags
  • Improvement: Security – nonce checking added
  • Change: Remove bottom margin from flex slider when navigation is hidden (add a CSS Class of ‘add-margin’ if you need the margin)
  • Fix: Add slides to slideshow in the same order they’re selected in the Media Library
  • Fix: Symlink path resolution
  • Fix: Do not try to resize/open images that are corrupt (missing metadata) (blank screen fix)

2.4.2 [17/10/13]

  • Fix: qTranslate caption & URL parsing for image slides

2.4.1 [17/10/13]

  • Fix: PHP Warning (reported by & thanks to: fgirardey)

2.4 [16/10/13]

  • Fix: FlexSlider styling in twenty twelve theme
  • Fix: IE10 – “Caption” placeholder text being saved as actual caption
  • Improvement: Settings table tidied up
  • Improvement: New slides are resized during addition to the slideshow
  • Improvement: Default slideshow size increased to 700×300
  • Improvement: Image filename now displayed for each slide (instead of image dimensions)
  • Improvement: Replace deprecated ‘live()’ jQuery call with ‘on()’
  • Improvement: Polish Language pack added (thanks to gordon34)
  • Improvement: Chinese language pack added (thanks to 断青丝)
  • Improvement: ‘metaslider_resized_image_url’ filter added (could be used to disable cropping)
  • Change: qTranslate support for slide URLs (see: http://screencast.com/t/FrsrptyhoT)
  • Change: PolyLang fix to ensure slides are extracted for all languages (set up a new slideshow for each language)
  • Change: WPML fix to ensure slides are extracted for all languages (set up a new slideshow for each language)

2.3 [18/09/13]

  • Improvement: Flex Slider upgraded to v2.2
  • Improvement: Responsive Slides upgraded to v1.54
  • Improvement: ‘Create first slideshow’ prompt added for new users
  • Change: ‘scoped’ attribute removed from inline CSS tag until browsers catch up with supporting it properly. A new filter has been added: “metaslider_style_attributes” if you wish to add the scoped attribute back in.
  • Change: wp_footer check removed due to confusion
  • New Feature: ‘metaslider_max_tabs’ filter added to convert tab list to ordered drop down menu
  • Fix: Remove ‘Insert Media’ tab from ‘Add Slide’ modal (WP 3.6 only)
  • New Feature: Filters added to allow modification of image slide HTML
  • Improvement: Settings area tidied up
  • Improvement: Image URL Field less restrictive
  • Improvement: HTML Output tidied up

2.2.2 [21/08/13]

  • Improvement: System check added with option to dismiss messages. Checks made for: role scoper plugin, wp_footer, wordpress version & GD/ImageMagick.

2.2.1 [08/08/13]

  • Fix: Responsive slides styling in FireFox (reported by and thanks to: dznr418)
  • Fix: Flex Slider carousel causing browser to crash in some circumstances

2.2 [01/08/13]

  • Fix: Paragraph tags being added to output using Nivo Slider

2.1.6 [22/07/2013]

  • Fix: Use the original image file if the slideshow size is the same size as the image file
  • Fix: Conflict with Advanced Post Types Order plugin
  • Fix: Colorbox conflict when using resizable elements in lightbox
  • Improvement: Refresh slides after clicking ‘save’
  • Improvement: Ensure taxonomy category exists before tagging slide to slideshow
  • Fix: Only submit form when submit button is clicked (not all buttons)
  • Fix: Coin slider caption width in FireFox
  • Improvement: Added hook to adjust carousel image margin

2.1.5 [24/05/13]

  • Fix: HTML 5 Validation

2.1.4 [21/05/13]

  • Fix: Widget markup invalid (reported by and thanks to: CarlosCanvas)

2.1.3 [21/05/13]

  • Fix: User Access Manager Plugin incompatibility issues (reported by and thanks to: eltipografico)

2.1.2 [21/05/13]

  • Fix: Nivo Slider theme select dropdown (reported by and thanks to: macks)
  • Fix: HTML5 Validation fix for inline styles
  • Improvement: Title field added to widget (suggested by and thanks to: pa_esp)
  • New feature: Spanish language pack (thanks to eltipografico)

2.1.1 [13/05/13]

  • Fix: PHP version compatibility

2.1 [12/05/13]

  • New feature: Widget added
  • New feature: System check added (checks for required image libraries and WordPress version)
  • Fix: Multiple CSS fixes added for popular themes
  • Fix: Flex slider shows first slide when JS is disabled
  • Improvement: Display warning message when unchecking Print JS and Print CSS options
  • Improvement: Coinslider navigation centered

2.0.2 [02/05/13]

  • Fix: PHP Error when using slides the same size as the slideshow

2.0.1 [28/04/13]

  • New feature: French language pack (thanks to: fb-graphiklab)
  • Fix: Use transparent background on default flexslider theme
  • Fix: Set direction to LTR for flexslider viewport (fix for RTL languages)
  • Fix: Nivoslider HTML Captions
  • Fix: Responsive slides navigation positioning

2.0 [21/04/13]

  • Fix: Responsive slides navigation styling
  • Fix: Update slide order on save
  • Fix: Smart crop edge cases
  • Fix: Flexslider navigation overflow

2.0-betaX [17/04/13]

  • Improvement: Error messages exposed in admin is Meta Slider cannot load the slides
  • Improvement: Load default settings if original settings are corrupt/incomplete
  • Fix: Smart Crop ratio
  • Fix: UTF-8 characters in captions (reported by and thanks to: javitopo)
  • Fix: JetPack Photo not loading images (reported by and thanks to: Jason)
  • Fix: Double slash on jQuery easing path
  • Fix: Paragraph tags outputted in JavaScript (reported by and thanks to: CrimsonRaddish)

2.0-beta

  • New feature: Preview slideshows in admin control panel
  • New feature: ‘Easing’ options added to flex slider
  • New feature: ‘Carousel mode’ option added for flex slider
  • New feature: ‘Auto play’ option added
  • New feature: ‘Smart Crop’ setting ensures your slideshow size remains consitent regardless of image dimensions
  • New feature: ‘Center align slideshow’ option added for all sliders
  • New feature: Coin Slider upgraded to latest version, new options now exposed in Meta Slider
  • New feature: Captions now supported by responsive slides
  • Improvement: Responsive AJAX powered administration screen
  • Improvement: Code refactored
  • Improvement: Flex Slider captions now sit over the slide
  • Fix: Nivo slider invalid markup (reported by and thanks to: nellyshark)
  • Fix: JS && encoding error (reported by and thanks to: neefje)

1.3 [28/02/13]

  • Renamed to Meta Slider (previously ML Slider)
  • Improvement: Admin styling cleaned up
  • Improvement: Code refactored
  • Improvement: Plugin localised
  • Improvement: Template include PHP code now displayed on slider edit page
  • Improvement: jQuery tablednd replaced with jQuery sortable for reordering slides
  • New feature: Open URL in new window option added
  • Improvement: max-width css rule added to slider wrapper
  • Fix: UTF-8 support in captions (reported by and thanks to: petergluk)
  • Fix: JS && encoding error (reported by and thanks to: neefje)
  • Fix: Editors now have permission to use MetaSlider (reported by and thanks to: rritsud)

1.2.1 [20/02/13]

  • Fix: Number of slides per slideshow limited to WordPress ‘blog pages show at most’ setting (reported by and thanks to: Kenny)
  • Fix: Add warning when BMP file is added to slider (reported by and thanks to: MadBong)
  • Fix: Allow images smaller than default thumbnail size to be added to slider (reported by and thanks to: MadBong)

1.2 [19/02/13]

  • Improvement: Code refactored
  • Fix: Unable to assign the same image to more than one slider
  • Fix: JavaScript error when jQuery is loaded in page footer
  • Improvement: Warning notice when the slider has unsaved changes
  • Fix: Captions not being escaped (reported by and thanks to: papabeers)
  • Improvement: Add multiple files to slider from Media Browser

1.1 [18/02/13]

  • Improvement: Code refactored
  • Fix: hitting [enter] brings up Media Library
  • Improvement: Settings for new sliders now based on the last edited slider
  • Improvement: More screenshots added

1.0.1 [17/02/13]

  • Fix: min version incorrect (should be 3.5)

1.0 [15/02/13]

  • Initial version

Downtime on Codecademy

Sometimes you learn from Codecademy; sometimes you learn from real-life experience. Yesterday, Codecademy was offline for almost 24 hours. We want to apologize and explain what happened.

Currently we have restored all user progress — courses, points and streaks — from before 2/6/13. We are doing all we can to restore user progress from 2/6/13 to 2/13/13 at 1:09 PM EST. Despite our best efforts we cannot guarantee that all work from that one week period will be recovered. If you have been affected, please let us know.

What happened?

At 1:09AM EST on Wednesday 2/13, we took Codecademy down to deal with a database migration issue we were facing. We tweeted about it at 1:30. Then we spent the next 24 hours behind the scenes to iron out the issue.

How did it happen?

Like most web applications, Codecademy stores its information — everything from your submissions in exercises to new accounts — in a database. We use a technology called MongoDB (by our friends at 10gen) to do this. Our databases have hundreds of millions of items in them and are growing larger by the second. We’ve been working to change the configuration of our databases so that we can migrate our data to new database structures, laying a solid foundation for future developments and features.

Around 1:30 PM yesterday we became aware of an issue: one of our local environments was not set up correctly, and was causing a database malfunction. The whole team dropped what they were working on and focused on restoring the site as quickly as possible.

Soon after we made the decision to keep the site down until we were 100% sure we could restore the majority of the data. Working with our external service providers, we matched up the data they had with the data we had internally from backups. We verified the integrity of certain data and began piecing back together our databases before bringing the site back online.

After pulling together backups of submissions from Amazon S3, course progress from our backup, and emails from our email database and userfox, we tested things internally to verify we hadn’t lost much. Then, finally, we brought the site back up.

What does this mean for me?

We have minimized the number of people affected by pulling from our backups, but we were not able to restore everything.

Currently we have restored all user progress — courses, points and streaks — from before 2/6/13. We are doing all we can to restore user progress from 2/6/13 to 2/13/13 at 1:09 PM EST. Despite our best efforts we cannot guarantee that all work from that one week period will be recovered. If you have been affected, [please let us know.]2

There are also certain data types that we were not able to retrieve for some users.

Anyone who created a new account from 2/6 – 2/13

Profile pictures will be missing and connection to social media accounts will need to be restored. We will be sending you a link to get set up again.

Anyone who created or joined a new group from 2/6 – 2/13

A small number of users and beta testers have access to our groups feature. If you created a group in the past week you will need to recreate it. If you joined a group in the past week you will need to rejoin.

What Now?

This event underscored the importance of frequent backups. We have created a new plan based on what we have learned to better recover from potential database migration issues in the future.

We will also be extending everyone’s streaks today. We know that you are committed to learning to code. We are committed to helping you get there. If our site goes down, your learning does too. This is the least we can do.

I wrote this post so that you would have confidence that we take downtime very seriously; we learn from each and every event; and we are committed to building the strongest community for learning how to program. Thank you to all our users for your patience.