Skip to Content

Newsfeeds

To bean or not to bean?

Dries Buytaert - 19 August 2014 - 3:15pm
Topic: Personal

Last weekend our Nespresso machine died in front of my eyes. Water started leaking from its base during use and it shorted the electricity. It was a painful death. I'm tempted to take it apart and try to repair it but it also brings up the question; what to buy next?

Part of me enjoys the convenience of the Nespresso machine, the other part of me is eager to buy my first "serious" espresso machine.

See, I'm a coffee lover. That is to say, like most of the people living in the US I have a coffee addiction, and have been brainwashed into spending more and more on my daily coffee intake. To make matters worse, we live in a society where we call the people who make great coffee "artists". I'd love to practice some coffee artistry myself and make that perfect barista-grade cup of coffee.

I did a little bit of research and picking an espresso machine is not an easy. It turns out this is a complex space. The choices range from super-automatic machines (e.g. they do everything from grinding, dosing, tamping to brewing) to semi-automatic machines (e.g. you manually grind your own beans and tamp them) to manual machines (e.g. you control how long the brewing water sits over the bed of coffee, resting as it were at neutral or boiler pressure). There are even "coffee schools" that offer classes and certifications to become a professional barista.

While I love the smell of fresh ground coffee and an above perfection espresso, I also don't want to take 15 minutes to make a cup of coffee. I usually need my first cup of coffee to help me wake up and I'm often crunched for time, so I don't want it to be super complicated.

Espresso or Nespresso? To bean or not to bean? Help!

Categories: Drupal

Phase2: Profiling Drupal Performance with PHPStorm and Xdebug

Planet Drupal - 19 August 2014 - 1:34pm

Profiling is about measuring the performance of PHP code, at least when we are talking about Drupal and Xdebug. You might need to profile your site or app if you work at a firm where performance is highly scrutinized, or if you are having problems getting a migration to complete. Whatever the reason, if you have been tasked with analyzing the performance of your Drupal codebase, profiling is one great way of doing so. Note that Xdebug’s profiler does not track memory usage. If you want to know more about memory performance tracking you should check out Xdebug’s execution trace features.

Alright then lets get started! 

Whoa there cowboy! First you need to know that the act of profiling your code is itself taking resources to accomplish. The more work your code does, the more information that the profiler stores; file sizes for these logs can get very big very quickly. You have been warned. To get going with profiling Drupal in PHPStorm and Xdebug you need:

To setup your environment, edit your php.ini file and add the following lines:

xdebug.profiler_output_dir=/tmp/profiler/ xdebug.profiler_enable=on xdebug.profiler_trigger=on xdebug.profiler_append=on

Depending on what you are testing and how, you may want to adjust the settings for your site. For instance, if you are using Drush to run a migration, you can’t start the profiler on-demand, and that affects the profiler_trigger setting. For my dev site I used the php.ini config you see above and simply added a URL parameter “XDEBUG_PROFILE=on” to my site’s url; this starts Xdebug profiling from the browser.

To give you an idea of what is possible, lets profile the work required to view a simple Drupal node. To profile the node view I visited http://profiler.loc/node/48581?XDEBUG_PROFILE=on in my browser. I didn’t see any flashing lights or hear bells and whistles, but I should have a binary file that PHPStorm can inspect, located in the path I setup in my php.ini profiler_output_dir directive.

Finally lets look at all of our hard work! In PHPStorm navigate to Tools->Analyze Xdebug Profile Snapshot. Browse to your profiler output directory and you should see at least one cachgrind.out.%p file (%p refers to the process id the script used). Open the file with the largest process id appended to the end of the filename.

We are then greeted with a new tab showing the results of the profiler.

The output shows us the functions called, how many times they were called, and the amount of execution time each function took. Additionally, you can see the hierarchy of all function calls and follow potential bottlenecks down to their roots.

There you have it! Go wild and profile all the things! Just kidding, don’t do that.

Categories: Drupal

Phase2: Profiling Drupal Performance with PHPStorm and Xdebug

Planet Drupal - 19 August 2014 - 1:00pm

Profiling is about measuring the performance of PHP code, at least when we are talking about Drupal and Xdebug. You might need to profile your site or app if you work at a firm where performance is highly scrutinized, or if you are having problems getting a migration to complete. Whatever the reason, if you have been tasked with analyzing the performance of your Drupal codebase, profiling is one great way of doing so. Note that Xdebug’s profiler does not track memory usage. If you want to know more about memory performance tracking you should check out Xdebug’s execution trace features.

Alright then lets get started! 

Whoa there cowboy! First you need to know that the act of profiling your code is itself taking resources to accomplish. The more work your code does, the more information that the profiler stores; file sizes for these logs can get very big very quickly. You have been warned. To get going with profiling Drupal in PHPStorm and Xdebug you need:

  • PHPStorm
  • PHP with the Xdebug extension
  • A website running on Drupal.

To setup your environment, edit your php.ini file and add the following lines:

xdebug.profiler_output_dir=/tmp/profiler/ xdebug.profiler_enable=on xdebug.profiler_trigger=on xdebug.profiler_append=on

Depending on what you are testing and how, you may want to adjust the settings for your site. For instance, if you are using Drush to run a migration, you can’t start the profiler on-demand, and that affects the profiler_trigger setting. For my dev site I used the php.ini config you see above and simply added a URL parameter “XDEBUG_PROFILE=on” to my site’s url; this starts Xdebug profiling from the browser.

To give you an idea of what is possible, lets profile the work required to view a simple Drupal node. To profile the node view I visited http://profiler.loc/node/48581?XDEBUG_PROFILE=on in my browser. I didn’t see any flashing lights or hear bells and whistles, but I should have a binary file that PHPStorm can inspect, located in the path I setup in my php.ini profiler_output_dir directive.

Finally lets look at all of our hard work! In PHPStorm navigate to Tools->Analyze Xdebug Profile Snapshot. Browse to your profiler output directory and you should see at least one cachgrind.out.%p file (%p refers to the process id the script used). Open the file with the largest process id appended to the end of the filename.

We are then greeted with a new tab showing the results of the profiler.

 

The output shows us the functions called, how many times they were called, and the amount of execution time each function took. Additionally, you can see the hierarchy of all function calls and follow potential bottlenecks down to their roots.

There you have it! Go wild and profile all the things! Just kidding, don’t do that.

Categories: Drupal

IGDA: Valve is the #1 place developers want to work

Social/Online Games - Gamasutra - 19 August 2014 - 11:28am

Data culled from a recent survey conducted by the International Game Developers Association suggests that most developers would choose to work at Valve over any other company, even their own. ...

Categories: Game Theory & Design

DrupalCon Amsterdam: Schedules, BOFS, & Training in Amsterdam

Planet Drupal - 19 August 2014 - 11:20am

The schedule for DrupalCon Amsterdam is live, which means that you can start planning out every detail of your Amsterdam experience. You can start the hard work of choosing the sessions, BOFs, and social events you want to attend, and build your own schedule right on the DrupalCon Amsterdam site.

BOF scheduling is live

Speaking of BOFs, you don’t have to wait until DrupalCon Amsterdam to claim yours: you can start using the online booking feature today to schedule your BOFs. Be sure you do it soon, though— BOF rooms go fast!

Register for training before 5 September

Lastly, we need more people to register to attend training at DrupalCon Amsterdam. Show us you're interested in these topics! Book before 5 September to make sure the course you want to attend runs. We know it's difficult to make a decision this early out, but classes which do not meet the minimum to run will be cancelled!

The training options are all fantastic and a great opportunity to learn more about Drupal, so register today.

See you in Amsterdam!

Categories: Drupal

IBP Catalog

New Drupal Modules - 19 August 2014 - 11:11am

IBP Catalog

Categories: Drupal

GDC GM Meggan Scavio calls for speaker diversity at GDC 2015

Social/Online Games - Gamasutra - 19 August 2014 - 9:16am

Game Developers Conference general manager Meggan Scavio explains her plans to expand the diversity of the community interacting at the 28th annual GDC next March. ...

Categories: Game Theory & Design

Gaming Localization Part II: How to Ensure Gaming Localization Success - by Caitlin Nicholson

Gamasutra.com Blogs - 19 August 2014 - 8:12am
We've already covered some things you need to be aware of for gaming localization. How can you ensure this process will be successful?
Categories: Game Theory & Design

Drupalize.Me: Upgrading Drush to work with Drupal 8

Planet Drupal - 19 August 2014 - 7:00am

When I first started learning Drupal, I remember the process of enabling and disabling modules on the Modules page and it took for-ev-er. My laptop was in serious danger of getting hurled across the room, due to my frustration. Then I discovered drush, and downloading and enabling modules was now performed with ease instead of pain and suffering. Of course there's a lot more you can do with drush than just download and enable modules, this is just one example.

I've been using Drush 6.x on my local machine for quite some time now. Poking around Drupal 8's UI and seeing what's new, I haven't missed drush too much...until it was time to test drive a new contrib module for Drupal 8. When I typed into my Terminal window drush dl page_manager, I got quite the error message:

Drush 6.x only works with Drupal 6 or 7. If I wanted to use Drush on my Drupal 8 site, I would need to upgrade to Drush 7.x.

Categories: Drupal

Drupalize.Me: Upgrading Drush to work with Drupal 8

Planet Drupal - 19 August 2014 - 7:00am

When I first started learning Drupal, I remember the process of enabling and disabling modules on the Modules page and it took for-ev-er. My laptop was in serious danger of getting hurled across the room, due to my frustration. Then I discovered drush, and downloading and enabling modules was now performed with ease instead of pain and suffering. Of course there's a lot more you can do with drush than just download and enable modules, this is just one example.

I've been using Drush 6.x on my local machine for quite some time now. Poking around Drupal 8's UI and seeing what's new, I haven't missed drush too much...until it was time to test drive a new contrib module for Drupal 8. When I typed into my Terminal window drush dl page_manager, I got quite the error message:

Drush 6.x only works with Drupal 6 or 7. If I wanted to use Drush on my Drupal 8 site, I would need to upgrade to Drush 7.x.

Categories: Drupal

Paying to win - by Ethan Levy

Gamasutra.com Blogs - 19 August 2014 - 6:25am
I dedicated $100 and 10 hours to climbing the PvP leaderboard in a free-to-play, mobile, build and battle game. This is what I learned along the way.
Categories: Game Theory & Design

Technology Compendium: Sir Arthour’s Guide to the Numenera

New RPG Product Reviews - 19 August 2014 - 5:00am
Publisher: Monte Cook Games
Rating: 5
Originally published at: http://diehardgamefan.com/2014/08/19/tabletop-review-technology-compendium-sir-arthours-guide-to-the-numenera/

Although Monte Cook Games has been very busy with the release of their newest game, The Strange, they haven’t neglected their original release, the multi award-winning Numenera. Their latest release, Technology Compendium: Sir Arthour’s Guide to the Numenera, focuses specifically on the bits of technology left over from the previous eight worlds which now litter the Ninth. These include cyphers, which are one shot use objects which players will have to monkey with to see what they do. Numenera also includes artifacts, which are devices with more than one use. Of course, because these artifacts were created by races long since dead (or something else?), the current inhabitants of the Ninth World will still have to poke, prod and guess as to what they do. Even if they get the artifact to work, it might not be used in the way its creators intended. A toaster might be used as a torture device rather than a bread warmer, for example. Then there are oddities. These are exactly what you might think – things that have no discernible use to the players or their characters, but are there because some previous race had a use for them. These might include things like a telescope device, but when you look through it, everything you see is coloured purple and all living creatures look like tree sloths. Who knows? Maybe it’s just the way the PCs’ brains interpret the visuals of the device. Maybe it’s a failsafe to prevent anyone but the original owner from using the device properly. It could be anything, but no one will ever know, in or out of the game! Oddities are there just to enhance the weird nature of Numenera and to give players something to think about.

Sir Arthour’s Guide to the Numenera is essentially two books in one. The first two dozen or so pages are for the GM, and are designed to be a guide on how to create, use and implement Numenera in your campaign. Here you’ll get an introduction as to who Sir Arthour is, along with a pretty in-depth look at the different power sources for various Numenera and the multitude of ways they can be used. Numenera are technology, but it’s also technology completely and utterly alien to the current residents of the planet, so even if there are multiple, or even plentiful, versions of a particular Numenera type, that doesn’t mean they are being used in the same way, or even correctly (per the original vision of the piece). Is essence, the game of Numenera is one of people who are technology scroungers, and this first section does a great job of reminding you of this fact.

This first section is written out of character, because it’s speaking directly to the Gamesmaster. It is meant to be a guide and/or learning tool to help one’s game become more detailed. You are given examples of different ways aspects of reality, like light, time, sound, magnetism, gravity, and heat can be used in pieces of Numenera. You are also given examples of chemical, biotech, the datasphere (think the evolution of the internet) and even self-aware machines that would also count as Numenera. Most of the examples in this section involve offensive capabilities or are traps for the PCs to fall into, which makes sense. After all, this section is designed to help the GM, as most will use Numenera in one of these two ways. I personally tend to focus more on the oddities side, but I realize I’m also probably in the minority in wanting to give players a blow gun that shoots out thoughts as rock rather than healing items or heat rays.

I also appreciated that this first section gave frank advice like, “Don’t use time travel,” or anything else that would give concrete evidence of any of the previous worlds. Numenera is best when evoking a sense of mystery, alien horror and wonder. To reveal too much is to miss the point of the game. I also enjoyed seeing a new descriptor buried in this section which will allow you to play some sort of artificial intelligence. You get a lot of stat boosts, but real hindrances to healing and dealing with fleshy life forms. It looks really interesting. In fact, everything about this section is fantastic and well worth reading, no matter how experienced with Numenera or RPGs in general you feel you are.

Now, Monte Cook Games COULD have released the first section as its own stand-alone piece, as they did with titles like In Strange Aeons, Love and Sex in the Ninth World or Injecting the Weird, but instead they bundled it with the second part of the book which, at over 100 pages, is the real meat of this piece. If you picked up previous digital PDFs from Monte Cook games, like Cypher Collection I or Artifacts and Oddities Collection I, than you know what to expect here. You’ll find chapters on Cyphers, Artifacts and Oddities, all done in similar manners to those previous releases. Don’t think you’re getting the same content however. For example, in Cypher Collection I, there were “only” fifty new cyphers to use. Here in the cyphers chapter in Sir Arthour’s Guide to the Numenera, you are roughly 500 new cyphers (I lost count as my mind started to wander around 400 and I still had several pages to go.). There are tons of new things here, along with random charts to roll on and a full page look at how to use malfunctions as GM intrusions.

Of course, you would think five hundred cyphers would be enough of a selling point, but we still have the artifacts and oddities! With both sections you, again, have a refresher on what the specific type of Numenera is meant to be, the random rolling lists and a whole bevy of new items to throw at your players. You have approximately 225 new artifacts and 300 oddities. That is an insane amount of content. Each new item gets a little blurb about it. Cyphers and artifacts get a full paragraph, while oddities get about a sentence each. All of the book is exceptionally well done, and if you’re in the need for more items to place in your Numenera campaign, then Sir Arthour’s Guide to the Numenera is a must own. There is so much stuff here you’ll never need another book or PDF on the subjects. Of course, that doesn’t mean more won’t be made, but I can’t imagine anyone being able to use All of these in their time GM’ing a Numenera campaign.

So yes, Sir Arthour’s Guide to the Numenera is an absolute steal for its $14.95 price tag. Those previous released collections offered only a fraction of the Numenera found here, and you’re getting a bigger bang for your buck with the Technology Compendium. About the only people I can see not getting their money’s worth out of this sourcebook are those that absolutely have to homebrew their worlds from the ground up. Hey, if you want to make your own Numenera, more power to you. I do it myself. However, you can’t deny that this book will not only save you a lot of time, but reading it will help you to really craft better objects to place in your campaign. You get a solid look at where the designers are coming from, and with so many examples in this thing, your idea might already be made and waiting for you nestled amongst the pages of this tome. This is certainly another fine addition to the Numenera line, and one fans of the game will really enjoy.
Categories: Game Theory & Design

ComputerMinds.co.uk: Language lessons: What are you translating?

Planet Drupal - 19 August 2014 - 5:00am
Content (node-level) translation or entity (field-level) translation?

It seems an obvious question to ask, but what are you translating?

The tools exist to translate just about anything in Drupal 7*, but in many different ways, so you need to know exactly what you're translating. Language is 'a first-class citizen', in the sense that any piece of text is inherently written by someone on some language, which Drupal 7 is built to recognise. Sometimes you want to translate each & every individual piece of text (e.g. at the sentence or paragraph level). Other times you want to translate a whole page or section that is made up of multiple pieces of text.

Categories: Drupal

Inspiration over Manipulation; Why Loyalty Matters - by Kee-Won Hong

Gamasutra.com Blogs - 19 August 2014 - 3:53am
A response to Puppy Games Blog Post 'Because You're Worthless: The Dark Side of Indie PR'. The reasons why in a crowded and competitive indie market that building loyal fans is more important than ever.
Categories: Game Theory & Design

Duets: Duets vs. Groups

RPGNet - 19 August 2014 - 12:00am
The differences between duet and group play.
Categories: Game Theory & Design

Game Design is the Meta-Medium - by Kevin Maxon

Gamasutra.com Blogs - 18 August 2014 - 11:48pm
What does philosophy say about art? What does it say about games? How do games fit into the world of art? I want to ask and answer these questions for their own sake. I think that the truth is broader and more profound than most people assume.
Categories: Game Theory & Design

Ubercart Stock Changelog

New Drupal Modules - 18 August 2014 - 6:21pm
What is Ubercart Stock Changelog?

This module allows site administrators to better manage their product stock by having the site record all changes in product stock, both decrements (usually from user orders) and increments (usually from restocks).

A stock change log is provided under the Administration > Store > Reports section to view the changes in product stock over time on a global or per-product basis.

Features
  • Records all changes to product stock and its configuration: stock active status, stock level and stock threshold
  • History of product stock changes can be viewed globally or on a per-product basis
  • Views integration - default stock change log is customizable to better meet the site's needs
Categories: Drupal

Ubercart Abandoned Cart and Order Reminders

New Drupal Modules - 18 August 2014 - 5:39pm
What is Ubercart Abandoned Cart and Order Reminders?

This module allows you to send reminder e-mail notifications to customers who have abandoned a cart or order on your site. The notification template can be customized to your needs, and you may choose to enable notifications for abandoned carts and abandoned order independently.

Features
  • Sends notifications for abandoned cards (for logged in users only) and for abandoned orders (logged in users or those who have entered and email address)
  • Configurable delay for when a cart is considered abandoned
  • Can be linked to a Boolean user profile field to allow users to opt-out of future notifications; see the README.txt file for details
  • User activity (updating cart, checking out a new order or order submission) automatically suppresses notifications on older abandoned carts and orders, preventing duplicate or needless notifications
  • Uses a Rules-based action set for better user control over how notifications get sent
Categories: Drupal

This Week in Video Game Criticism: From Critical Let's Plays to a History of Mobile Games

Social/Online Games - Gamasutra - 18 August 2014 - 3:09pm

This week, our partnership with game criticism site Critical Distance brings us picks from Zolani Stewart on topics ranging from the rising tide of Youtube games criticism to a history of mobile games. ...

Categories: Game Theory & Design

Daniel Pocock: Is WebRTC private?

Planet Drupal - 18 August 2014 - 12:55pm

With the exciting developments at rtc.debian.org, many people are starting to look more closely at browser-based real-time communications.

Some have dared to ask: does it solve the privacy problems of existing solutions?

Privacy is a relative term

Perfect privacy and its technical manifestations are hard to define. I had a go at it in a blog on the Gold Standard for free communications technology on 5 June 2013. By pure co-incidence, a few hours later, the first Snowden leaks appeared and this particular human right was suddenly thrust into the spotlight.

WebRTC and ICE privacy risk

WebRTC does not give you perfect privacy.

At least one astute observer at my session at Paris mini-DebConf 2014 questioned the privacy of Interactive Connectivity Establishment (ICE, RFC 5245).

In its most basic form, ICE scans all the local IP addresses on your machine and NAT gateway and sends them to the person calling you so that their phone can find the optimal path to contact you. This clearly has privacy implications as a caller can work out which ISP you are connected to and some rough details of your network topology at any given moment in time.

What WebRTC does bring to the table

Some of this can be mitigated though: an ICE implementation can be tuned so that it only advertises the IP address of a dedicated relay host. If you can afford a little latency, your privacy is safe again. This privacy protecting initiative could be made by a browser vendor such as Mozilla or it can be done in JavaScript by a softphone such as JSCommunicator.

Many individuals are now using a proprietary softphone to talk to family and friends around the world. The softphone in question has properties like a virus, siphoning away your private information. This proprietary softphone is also an insidious threat to open source and free operating systems on the desktop. WebRTC is a positive step back from the brink. It gives people a choice.

WebRTC is a particularly relevant choice for business. Can you imagine going to a business and asking them to make all their email communication through hotmail? When a business starts using a particular proprietary softphone, how is it any different? WebRTC offers a solution that is actually easier for the user and can be secured back to the business network using TLS.

WebRTC is based on open standards, particularly HTML5. Leading implementations, such as the SIP over WebSocket support in reSIProcate, JSCommunicator and the DruCall module for Drupal are fully open source. Not only is it great to be free, it is possible to extend and customize any of these components.

What is missing

There are some things that are not quite there yet and require a serious effort from the browser vendors. At the top of the list for privacy:

  • ZRTP support - browsers currently support DTLS-SRTP, which is based on X.509. ZRTP is more like PGP, a democratic and distributed peer-to-peer privacy solution without needing to trust some central certificate authority.
  • TLS with PGP - the TLS protocol used to secure the WebSocket signalling channel is also based on X.509 with the risk of a central certificate authority. There is increasing chatter about the need for TLS to use PGP instead of X.509 and WebRTC would be a big winner if this were to eventuate and be combined with ZRTP.

You may think "I'll believe it when I see it". Each of these features, including WebRTC itself, is a piece of the puzzle and even solving one piece at a time brings people further out of danger from the proprietary mess the world lives with today.

Categories: Drupal
Syndicate content


Google+
about seo