Javascript News

Syndicate content
Pipes Output
Updated: 48 weeks 6 days ago

The State of Accessibility in PHP Tools

Fr, 2015-07-31 16:00

Usually when I tell people that I’m blind, many people ask me how I can use the computer. “Is someone reading you my messages?” I remember someone asking. Many people imagine that I have this super-nifty speech recognition software that I can just talk to, and it would do anything, even write code. Imagine dictating code to a speech recognition system!

I gave an answer on Quora, to someone who had asked How does a visually impaired computer programmer do programming? I recommend you go through that answer to have a better context on what I’ll be talking about in this post. As is my habit, though, I’ll still point out the important bits here, so if you don’t feel like clicking on that link, don’t worry!

Before I get to the comparison, allow me to give you a few facts so that we are all on the same page. Feel free to skip forward if you already know these points, but I’ve found that a lot of people don’t, and I’m going to start with those.

How do the blind use computers?

They use screen readers. As the name implies, these applications read the screen through synthesized speech, and they also have an optional Braille output through a Braille display. Both of these options (speech and Braille) have to go through the screen reader, though, so if the screen reader can’t see the content, it can’t display it through either of these outputs.

How do you type? How do you use the mouse?

The answer to both these questions is, “through the keyboard”. Our screen readers have very specialized keystrokes that allow us to move the mouse, click, hover on an item, and jump around in web documents (by links, h1-6 headings, lists and list items, form fields and many more).

Continue reading %The State of Accessibility in PHP Tools%

3 Options for Creating Mobile Apps Without Coding

Fr, 2015-07-31 15:00

There was a time when mobile application development was only for the elite programmer (i.e. people who knew the native platform language). With the dawn of hybrid mobile application technology, it was possible to create mobile applications using HTML, CSS and JavaScript. Hybrid application development made it possible for non-mobile developers to get their hands dirty with mobile app development.

But what about those people who don't have any prior programming knowledge? Can they make a mobile applications on their own?

They certainly can.

Continue reading %3 Options for Creating Mobile Apps Without Coding%

Design Secret #4: Taking Advantage of Behance Mobile Apps

Fr, 2015-07-31 14:00

We all love Dribbble, but lots of designers overlook the power of the Behance Network. Daniel looks at some of the neat tricks this quiet achiever can deliver.

Continue reading %Design Secret #4: Taking Advantage of Behance Mobile Apps%

Video: Populating a Table with Data

Do, 2015-07-30 20:00

In this video I'll show you how to populate a table with data.

Loading the player...

Continue reading %Video: Populating a Table with Data%

Getting started with Ember and Ember CLI

Do, 2015-07-30 20:00

Ember has gone through a lot of changes over the years. One of the biggest ones has been the introduction of the Ember CLI, a command line utility built for Ember. It combines several features including generators, minifiers, CSS preprocessor compilers, autoreload, and ES6 module loaders. This command line tool will help you reduce the time spent on setting up some of your tools such as Grunt and Gulp. We can say that it could be a good alternative to these tools for any of your brand new Ember projects.

In this article, you’ll learn how to build a simple contacts manager application using Ember CLI. This tutorial will be a bit different from the other articles about Ember I’ve published on SitePoint since they did not ship with Ember CLI. However, most of those concepts still apply, so I suggest you to take a look at them and follow on.

The complete code for this article is available on GitHub.

Continue reading %Getting started with Ember and Ember CLI%

Foundation Board Update – Renewed Focus on Key Priorities

Do, 2015-07-30 18:57

In June, the jQuery Foundation Board of Directors held an in-person meeting, hosted by Famous in their San Francisco offices. During the meeting, the Board agreed to the following priorities to fulfill the Foundation’s Mission of improving the open web, making it accessible for everyone, through the development and support of open source software, and collaboration with the development community.

Our priorities are:
  1. Diversity: Open source depends on contributions. An organization’s vitality can be destroyed by having a closed group that excludes or even actively antagonizes newcomers. There is incredible value in having a diverse set of contributors with different cultures, backgrounds, perspectives, and skill sets. The jQuery Foundation is committed to improving diversity at all levels, from the development community in general to the projects we host and all the way to our own board, which we acknowledge isn’t very diverse today.
  2. Accessibility: As with diversity, this goal is again in the spirit of inclusiveness. Web technology has many features to make it friendly to users with sight, motor, or cognitive issues. Many web developers don’t know about them, or defeat them without realizing the implications. We want to change that. Last month’s jQuery SF conference had several excellent speakers who showed what the web can be like for some users: https://www.youtube.com/watch?v=HWzEF1P-bvI#t=7h34m30s
  3. Education: This goal crosses all of our priorities and encompasses many different subjects. By educating developers, both on the world of open source and also on the issues of diversity and accessibility, we can make the web an inclusive place.
We will achieve these goals by focusing our efforts on three key areas:
  1. Actively Recruiting New Projects: As you can tell, the jQuery Foundation’s mission goes far beyond the original jQuery projects. We are looking to host projects that we can help. The Foundation offers projects greater visibility, a voice in the standards process, help in managing their community, infrastructure such as a CDN, and other benefits. Projects remain autonomous, the Foundation doesn’t dictate the project’s goals or roadmap. We can, however, offer financial support for meeting mutually agreed upon project goals.
  2. Defining and Delivering Essential (basic through advanced) Web Developer Education: We want to help developers learn how to contribute to open source projects, how to run open source projects, and how to build web sites or applications that apply best practices and beyond that, we want to educate developers on the importance and implementation of diversity and accessibility in their projects. Finally, we want to get the word out about how the jQuery Foundation can help developers do their jobs better.
  3. Growing Our Impact through Outreach: The jQuery Foundation can only accomplish its goals with the support of companies and individuals who believe in the mission. If you or your company is interested in joining us to improve the web development community, please get in touch info@jquery.org. Like the open source projects we host, the jQuery Foundation itself is powered by memberships, volunteers and donations! Those of you who have already contributed, we thank you for supporting the mission.

jQuery Foundation Project Updates

Do, 2015-07-30 18:57

In order to make it easier for jQuery Foundation Members and Web developers to quickly stay abreast of all our projects, we will periodically publish consolidated project updates here.

jQuery Core

Powering 2/3 of sites, jQuery is a fast, small, and feature-rich JavaScript library

Since last December’s release, the team has been hard at work on a major 3.0 release. This release – the alpha of which came out on July 8 – comes with many updates (including Promises/A+ compliant Deferreds) and bug fixes, and it finally removes some previously deprecated and underused features.

Links: download, meeting notes, full list of 3.0 changes

A big thank you to the core team and everyone who contributed – and will contribute – to the upcoming release.
Questions?  Contact Timmy Willison

Globalize

JavaScript library for internationalization and localization that leverages the official Unicode CLDR JSON data.

Globalize version 1.0 was released in April and provides developers with localized number formatting and parsing, date and time formatting and parsing, relative time formatting, currency formatting, and message formatting (with pluralization and gender support) that runs in browsers and Node.js, consistently across all of them.

One exciting thing the community is focused on is the ability to compile Globalize for production. This will enable applications to generate custom runtime code that is extremely small and fast.

Links: git, mailing list,
Questions?  Contact Rafael Xavier de Souza

jQuery Mobile

Unified, HTML5-based user interface system for all popular mobile device platforms, built on the jQuery and jQuery UI foundation

The team has been heads down on version 1.5.0, which will bring numerous improvements including:

  • A new standalone enhancer module for customizable, fast declarative initialization of any javascript including jQuery widgets and plugins.
  • Improved and re-written shared with jQuery UI including button, checkboxradio, and controlgroup and the accordion widget which will replace the current collapsible and collapsible set widgets.
  • All of jQuery Mobile’s widget will now also feature the classes option for improved customizability and theming.
  • Re-written table and navbar widgets
  • Greatly improved modularity

Check out full release plans here

Links: download, meeting notes

Questions?  Contact Alexander Schmitz

Esprima

High performance, standard-compliant ECMAScript parser written in JavaScript

In March, we released Esprima 2.1.0, introducing support for several new pieces of ES6 syntax. In the mean time, a lot of work has been done to complete its ES6 support (check the roadmap). We’ve also improved the testing infrastructure and workflow to make the codebase more contributor-friendly.

Links: git, mailing list

A big thank you to all those who contributed patches to this release: Ariya Hidayat, Bei Zhang, Brandon Mills, Mike Rennie, Mike Sherov.

Questions?  Contact Ariya Hidayat

jQuery UI

Curated set of UI interactions, effects, widgets, and themes built on top of the jQuery Library.

The team released jQuery UI 1.11.4 in March, bringing bug fixes for Draggable, Resizable, Sortable, Accordion, Dialog, Slider, and Tooltip.

We are focused now on support for Pointer Events, and splitting up UI Core and old jQuery support to enable smaller builds

Links: git, meeting notes
Questions? Contact Scott González

Chassis

Creating open standards for CSS libraries, JavaScript UI libraries, and web developers in general.

The team is working on its Phase One release which will involve an initial CSS Framework – this is planned for later this summer.

Work is also underway for a themeroller.

Links: git, meeting notes

Thanks to Micheal Arestad, Alexander Schmitz and Rohit Mulange

Questions?  Contact Sarah Frisk

QUnit

Powerful, easy-to-use JavaScript unit testing framework

The latest release, 1.18.0, made a lot of improvements to the HTML reporter, making it more efficient to debug failures. For example, a new diff algorithm makes it easier to spot the difference in failed expected/actual assertions.

We’re currently working on the js-reporters project, which QUnit will implement, along with hopefully many other JavaScript testing frameworks and tools. The goal is to standardize an API with events and event data for test runners. A tool like Karma could then adopt a single interface instead of having to support each testing tool individually.

If you want to help moving QUnit along, check out these issues.

Links: git, meeting notes

Questions?  Contact Jörn Zaefferer

PEP

PointerEvents Polyfill: a unified event system for the web platform

PEP’s First release (0.3.0) came out in April and the the project is presently working to automate and improve the W3C test suite.

Links: git, meeting notes,

Questions?  Contact Scott González

Get Some Credit!

Do, 2015-07-30 17:57
Submit Your Project for the jQuery Foundation Web Excellence Program

How awesome is your project/site/integration/app? Probably really awesome, otherwise, you wouldn’t be doing it, right?!?

The jQuery Foundation wants to tell the world about all the incredible things developers are doing with jQuery Foundation projects. That’s why we are launching the jQuery Foundation Web Excellence program.

Here’s how it works:
  1. You pick the category or categories in which you want to submit (See category descriptions below)
  2. Tell us about you, your company/project, and how jQuery Foundation projects help you make it happen
  3. We’ll highlight projects on the jQuery Blog and promote them on social media

What are you waiting for? Get the the visibility you and your project deserve!  Go to the Web Excellence Submission Form and submit your project today!

Category Descriptions
  • All Around Rock Star: This category highlights the sites/apps that leverage any jQuery Foundation project to produce a stellar digital experience. Please highlight your approach to leveraging jQuery Foundation tools, libraries and resources, stand-alone or in combination with other Open Web components and frameworks to solve real problems and delight users.
  • Mobile Masterpiece: This category highlights the sites/apps that use any jQuery Foundation project to engage consistently with users across all devices, including mobile.
  • Enterprise: Highlights the organizations leveraging any jQuery Foundation project to help their enterprise organization (5,000 and up employees) achieve strategic IT and/or business objectives (e.g. system integration, uptime, compatibility/accessibility, revenue, cost reduction).
  • Top Speed: Highlights the organizations that use any jQuery Foundation project as part of a rapid project/product launch and/or to achieve fast site/app performance.  Do your users have a need for speed that jQuery Foundation projects help you deliver? Tell us about it!
  • Globetrotter: Showcases the sites, apps, systems or projects that best demonstrate the power of Globalize when implemented stand-alone or in combination with other jQuery Foundation projects.
  • Powered by jQuery: Showcases the SDKs and other toolsets that leverage any jQuery Foundation project as a dependency.
Rules & Terms:
  • There is no fee to enter
  • Only English language submissions will be accepted
  • Your entry must be submitted using the Submission Form
  • Please provide box/drive links to all graphics/visuals in your text answers, so the desired placement is clear
  • You may submit for multiple categories, but please make individual submissions for each desired category
  • The jQuery Foundation reserves the right to change or cancel a category at any time
  • A selection of submitted entries will be publicly displayed on the jQuery Foundation web site and promoted via our social media channels
  • Submitting an entry gives the jQuery Foundation the permission and approval to leverage submitted content for Marketing and Public Relations purposes

Social Media Management App Showdown: Buffer vs Hootsuite

Do, 2015-07-30 11:06

Building a disruptive product leaves little time for anything else. Life suddenly becomes a repetitive routine of tests, fixes and upgrades. Above all, you are focused on providing an amazing experience for users. What many startup founders forget is that unless you share that story, consistently and in front of a relevant audience, all the […]

Continue reading %Social Media Management App Showdown: Buffer vs Hootsuite%

Boom! The Sound of a Perfect Idea Landing

Do, 2015-07-30 07:36

“The Medium IS the Message.“ This phrase was coined by Marshall McLuhan back in the mid-60’s. Marshall was an influential writer and thinker who also gave us the term ‘global village‘. He argued that the effects of a newly-invented media on society – i.e. books or television or movies – were much more important than […]

Continue reading %Boom! The Sound of a Perfect Idea Landing%

An Introduction to Open-source Licenses

Mi, 2015-07-29 22:00

The web community is renowned for its willingness to share. Not only do we share experiences, give advice and help each other with projects, but we also share an incredible amount of code—from small snippets to entire frameworks and applications.

Much of the software we use daily is open-source—from operating systems and servers to the apps we use to ply our trades.

Amid all of this sharing, there arises the issue of copyright and licensing. If you're using someone else's free software, or if you're sharing your own work, it's important to consider these issues.

Standard Copyright

When you create a piece of software, it's automatically protected by copyright. This means that you retain all rights to your source code and that nobody else may reproduce, distribute, or create derivative works from your work.

It may also lead to no one using your code—which obviously defeats the purpose of sharing it.

So if you really do want to share your work, but also want to protect it in some way, it's important to consider the options available for licensing your work.

Choosing a License

There are various, recognized licenses you can apply to your work to make it really clear what people can do with your code. But each license has a particular focus, so which should you choose?

In this article, I'll briefly introduce several of the most used licenses. Which one you choose will depend on what you want to achieve and how your code should be distributed.

Disclaimer: the overview that follows only provides a general sense of what each license encompasses. To understand each license fully, you'll need to do more reading.

Continue reading %An Introduction to Open-source Licenses%

How to Create a Node.js Cluster for Speeding Up Your Apps

Mi, 2015-07-29 20:30

Node.js is becoming more and more popular as a server-side run-time environment, especially for high traffic websites, as statistics show. Also, the availability of several frameworks make it a good environment for rapid prototyping. Node.js has an event-driven architecture, leveraging a non-blocking I/O API that allows requests being processed asynchronously.

One of the important and often less highlighted features of Node.js is its scalability. In fact, this is the main reason why some large companies with heavy traffic are integrating Node.js in their platform (e.g., Microsoft, Yahoo, Uber, and Walmart) or even completely moving their server-side operations to Node.js (e.g., PayPal, eBay, and Groupon).

Each Node.js process runs in a single thread and by default it has a memory limit of 512MB on 32-bit systems and 1GB on 64-bit systems. Although the memory limit can be bumped to ~1GB on 32-bit systems and ~1.7GB on 64-bit systems, both memory and processing power can still become bottlenecks for various processes.

The elegant solution Node.js provides for scaling up the applications is to split a single process into multiple processes or workers, in Node.js terminology. This can be achieved through a cluster module. The cluster module allows you to create child processes (workers), which share all the server ports with the main Node process (master).

In this article you'll see how to create a Node.js cluster for speeding up your applications.

Continue reading %How to Create a Node.js Cluster for Speeding Up Your Apps%

Video: Introducing One-Way Data Flow

Mi, 2015-07-29 20:00

In this video, we look at React's concept of one-way data flow. We'll observe a very common example of two-way binding, from frameworks like Angular and Ember, and mimic the functionality in React. This video utilizes everything that we have learned from the previous lessons. If something seems unfamiliar, check out the previous videos for clarification.

Loading the player...

Continue reading %Video: Introducing One-Way Data Flow%

Making Your WordPress Plugins Even More Developer Friendly

Mi, 2015-07-29 19:00

In the last article, we looked at how Actions and Filters can be added to your WordPress plugins to help make them developer friendly.

Today, we’ll look at how to provide developer documentation.

Documenting Your Actions and Filters

It’s useful to document your WordPress plugin’s Actions and Filters, so that developers can quickly find what they need, as well as understand what each Action and Filter does.

Code Commenting

As developers, we’re quite comfortable with reviewing other people’s code to understand how something works. Adding DocBlock comments to our actions and filters is a great way to explain what a particular call does:

Continue reading %Making Your WordPress Plugins Even More Developer Friendly%

Implementing “Show More/Less” Functionality with Pure CSS

Mi, 2015-07-29 18:00

Nowadays developers take advantage of different CSS techniques to create sliders, modals, tooltips, and many more Javascript-based components.

In this article, we’ll work with some of those techniques to implement what we might refer to as the “Show More/Less” functionality, and doing it without writing any JavaScript. We’ll also create a fully functional accordion-style show/hide demo that you can use as a starting point for your projects.

We have a lot to cover (techniques, pitfalls, and challenges), so let’s get started!

Note: This article will not discuss how to make this component accessible, but that could certainly be a valid improvement and maybe a topic for another post.

CSS Requirements

To better understand the process for creating this functionality, you have to be familiar with the following key CSS concepts:

To help out, I’ve created a demo, which you can see below, to give you the knowledge needed to follow along with this article.

See the Pen Lessons to prepare for the checkbox hack by SitePoint (@SitePoint) on CodePen.

Just click on one of the buttons to view a description and demo of the technique.

The Markup

The HTML structure for our demo is shown below:

[code language="css"]

[/code]

As you can see, we define an unordered list with five list items. The last item acts as the container for our checkbox and its corresponding label. In addition, we include a second unordered list within the wrapper element. This list holds the items that we want to show as soon as the checkbox becomes checked.

Defining Basic Styles

After structuring the demo, we define a few reset styles for our elements. Nothing fancy, just some simple CSS rules that will allow us to enhance the appearance of our component. Have a look at the two rule sets below:

[code language="css"]
ul {
width: 50%;
margin-left: auto;
margin-right: auto;
list-style-type: none;
background: white;
}

li {
height: 50px;
line-height: 50px;
border-top: 1px solid #e9ecef;
}
[/code]

Styling the Checkbox Container

In this part of the tutorial, we will set up the styles for the last list item.

First, we change the value of the aforementioned height property. Then, we set its position to relative. This property value is important because it will help us position the label element:

[code language="css"]
.container {
position: relative;
height: auto;
}
[/code]

Next, we hide the checkbox:

[code language="css"]
[type="checkbox"] {
position: absolute;
left: -9999px;
}
[/code]

…and style the relevant label:

[code language="css"]
label {
background: #e4e3df;
display: block;
width: 100%;
height: 50px;
cursor: pointer;
position: absolute;
top: 0;
}
[/code]

Notice that we position our label absolutely and give it a top offset of 0 pixels. So now you might be wondering if we really need those two properties. At first glance they seem unnecessary. But as we’ll see in a moment, these are required declarations.

If you look back at the HTML structure, you’ll see that the label is an empty element. We made that assumption because we want its content to change depending on the checkbox state. To achieve this, we take advantage of CSS’s pseudo-elements. When the checkbox isn’t checked (default behavior), the More keyword appears. Also, for styling we use a few characters taken from the lovely CopyPasteCharacter web app.

Continue reading %Implementing “Show More/Less” Functionality with Pure CSS%

Using Selenium with PHPUnit

Mi, 2015-07-29 16:00

Testing is a really wide subject, whether it be unit testing, functional testing, acceptance testing, etc. In this article, we’re going to see how you can do acceptance testing using Selenium. I will use a practical example to illustrate a real use case. I will assume that you already know how to do unit testing using PHPUnit, or that you at least have a grasp of what it’s all about. Let’s get started.

What Is Acceptance Testing?

Acceptance testing is the process of telling user stories through tests, and I love this quote to describe it:

A formal test conducted to determine whether or not a system satisfies its acceptance criteria and to enable the customer to determine whether or not to accept the system.

What Is Selenium?

Selenium is a tool to automate user interface testing. It helps with testing your application against the browser. The process could be described like so:

  • Go to the page http://myapp.dev/videos.
  • Assert the page contains a list of 20 videos.
  • Click number two on the pagination.
  • Assert the page contains a list of 20 videos.
  • Quit the browser.

You may be wondering: “How does it manipulate the web page using the described tests?”

The answer is “it depends”. If you’re using Selenium RC (previously named Selenium 1), it will inject auto generated JavaScript code to the page to perform the desired actions. Selenium RC is deprecated and is only supported in maintenance mode; you should be using Selenium WebDriver.

When using Selenium WebDriver (Selenium 2), the tests are translated into commands and passed to the Selenium server (more about that in a moment), then passed to the browser using the web browser native API.

Continue reading %Using Selenium with PHPUnit%

Deep Linking in Apps for Improved Discoverability

Mi, 2015-07-29 15:00

For independent app developers, discoverability is not an easy thing to achieve. In all app stores, particularly Google Play, it’s usually the case that a handful of larger, well-known developers dominate the charts. Research suggests that just 3% of the 250 top apps in the Play store were by new publishers and these accounted for just 1.2% of overall app revenue.

A study carried out by Tune found that 47% of users found apps through the Apple Store, whilst 53% of users found apps through Google Play.

Continue reading %Deep Linking in Apps for Improved Discoverability%

Open Source Presentation Tools: Are We There Yet?

Mi, 2015-07-29 14:00

In recent months I have been attempting to make as much of my work and creative output as open and collaborative as possible. With most of my output being code and markdown this has been simple.

I give a lot of presentations about open culture and it seemed hypocritical that I was delivering them through closed, non-collaborative software.

Whilst Powerpoint has gained competition from Keynote and Prezi they are all still closed and only semi-collaborative formats. Crucially, they are 'dead-end' formats, i.e. a powerpoint file, is just a powerpoint file, it can't be a part of anything else. What I mean by this will become clearer later.

I knew there were options available to create a more 'open' presentation, generally browser based format that leverage a JavaScript and CSS to recreate the look, feel and effects of traditional presentation software.

In addition to recreating my existing presentations (from PowerPoint and Keynote) in one of these frameworks I had some other requirements to make me satisfied.

What were my motivations? Write once, re-purpose multiple times

I want to be able to write the same content for a blog post, a presentation and some other purposes and be able to render them in my different use cases.

Shareability

Frequently when I present at a conference the organizers ask for a slide deck afterwards. For some a link may be enough, but for others they want a standalone file, such as a PDF. This allows presentations to be uploaded to services like Slideshare where I get a lot of exposure for my presentations.

Attractive

I like to create presentations with full screen images, clear, readable text and other tropes to make people notice. If all a framework supports is small images and text then I'm not interested.

My Framework of Choice

I actually found fewer frameworks than I was expecting and settled on Reveal.JS as it met my prerequisites, as well as offering some other features that I hadn't even considered, such as presenter view and notes.

It's worth noting at this point that most of these frameworks are aimed at those with technical knowledge. Some do offer commercial drag and drop services, but to leverage their true potential you will need a solid working knowledge of CSS, HTML and (maybe) JavaScript.

Creating a Presentation

At a basic level, this is a simple process, and we have a good introduction already on SitePoint.

In the default reveal HTML file you will find a <div class="slides"> which can contain multiple section tags, these are your slides. With reveal you can create 'nested' slides, or vertical slides that allow for the creation of logical sections in your presentation. These are created by nesting further section tags inside a section tag.

After that, slides are just HTML, with some custom tags and parameters unique to Reveal. If you can code HTML, you can create a presentation and if you can't, Reveal offers a commercial product just for you, the slides.com service.

So, for the rest of this article I'm going to assume that you can manage coding some basic slides and show you tips and tricks that I have learned in the process of migrating presentations to Reveal.

Full Screen images

Add the following class to your section / slide div:

[html]

[/html]

You can then layer other content over this image as normal. There are many options for how the image should display and bear in mind some of the loading options you might need to prevent a progressive image load when switching screens.

Left and Right panels

Often in Powerpoint and Keynote, templates have left and right panels with two different sets of content, an image and text for example. Whilst some would say that using this sort of layout goes against the more fluid design principles of reveal, I think there is still a need for it occasionally. It's easy to replicate with some basic CSS:

[css]
.left-align {
float:left;
width:50%;
}

.right-align {
float:right;
width:50%;
}

.panel {
text-align:left;
}

.panel img {
width:100%;
}
[/css]

We create a general panel class that aligns text left instead of reveal's typical centered alignment. We create two classes to set the float and width and make any images that are in a panel fill 100% width. All the above is to personal taste and suited my needs, but you get the idea.

Stretching Images

Whether filling the whole slide or one of the panels we created above, we sometimes want an image to fill the space it occupies proportionally. This is achieved by adding the stretch class to any media, images and media included.

Code

Code highlighting is one of reveal's standout features, but I still find it limited and have tweaked it. This is due to it's use of the pre tag which will render exactly as it sees, which means if you're a code layout obsessive like me, then your code may not render how you want in a presentation.

I've found I can get more control by using this CSS snippet:

[css]
.reveal code {
white-space: pre-line;
text-align: left;
}
[/css]

And then make use of the &emsp; tab HTML entity to control tab indents how I want them, i.e.:

[code]
docker run -d -p 4200:4200 -p 4300:4300
 --volume /data:/data
 --env CRATE_HEAP_SIZE=8g
 crate crate
  -Des.path.data="/data/data1,/data/data2"
  -Des.multicast.enabled=false
  -Des.network.publish_host=$PRIVATE_IP
  -Des.discovery.zen.ping.unicast.hosts=$HOSTS
[/code]

I would suggest that you set the code class for that extra fine grained control of how it will display, i.e. for the above I would use <code data-trim class="bash">.

Continue reading %Open Source Presentation Tools: Are We There Yet?%

How to Make Your Blog Post Go Viral

Mi, 2015-07-29 13:46

The other day in Maker Hunt’s Slack group, an entrepreneur asked the #content channel to read through his Medium post before he submitted it to TNW, FastCompany, Entrepreneur and other similar publications. This led to two questions from a cool Product Hunter Gabe Roeloffs. How do you submit content to to be published to popular […]

Continue reading %How to Make Your Blog Post Go Viral%

Video: Profiling JavaScript Performance in Chrome

Di, 2015-07-28 22:00

In this video, I'll dive into the Chrome Developer Tools Profiler and demonstrate how we can use it to analyze JavaScript running in the browser.

Loading the player...

Continue reading %Video: Profiling JavaScript Performance in Chrome%