Planet Drupal

Syndicate content
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 16 min 24 sec ago

Stanford Web Services Blog: Scaling Drupal for Higher Ed Institutions - SWS at DrupalCon Austin

Thu, 06/05/2014 - 15:40
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedp class=summaryLinnea Williams and I will be participating in the a href=https://austin2014.drupal.org/session/scaling-drupal-higher-ed-institutions rel=nofollowScaling Drupal for Higher Ed/a panel discussion at DrupalCon Austin on June 5th, 2014./p pVideo should be available shortly after the session ends, and a href=https://stanford.box.com/s/k2t5wdpzq3kd8o6yyq80 rel=nofollowyou can download a PDF copy of our slides here/a./p /div/div/div

Dries Buytaert: State of Drupal presentation (June 2014)

Thu, 06/05/2014 - 00:00
div class=field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-abovediv class=field-labelTopic:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/tag/drupal typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Drupal/a/divdiv class=field-item odda href=/tag/drupalcon typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=DrupalCon/a/divdiv class=field-item evena href=/tag/state-of-drupal typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=State of Drupal/a/div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpI gave my traditional State of Drupal presentation this week at DrupalCon Austin. You can a href=https://www.youtube.com/watch?v=gnERPdAiuSowatch the recording of my keynote/a if you are interested in learning about my vision for the future of the web, the challenges and opportunities ahead of us, how Drupal fits into that. In good tradition, you can also a href=http://buytaert.net/files/state-of-drupal-june-2014.pdfdownload a copy of my slides/a (PDF, 120 MB)./p iframe width=500 height=281 src=//www.youtube.com/embed/gnERPdAiuSo frameborder=0 allowfullscreen=/iframeiframe src=http://www.slideshare.net/slideshow/embed_code/35498481 width=427 height=356 frameborder=0 marginwidth=0 marginheight=0 scrolling=no allowfullscreen= /iframe/div/div/div

Drupal Association News: 2013 Audited Financials for the Drupal Association

Wed, 06/04/2014 - 20:50
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpimg alt= src=https://assoc.drupal.org/files/3542629650_7e47dd6cc5_m.jpg style=width: 240px; height: 180px; border-width: 0px; border-style: solid; margin: 10px; float: left; /The phrase audited financial statements does not usually bring joy to the hearts of children or wake slumbering people from naps. However, if you're me, sutied financials are pretty darn exciting. Firstly, I love them because they give us a baseline to measure against year afer year, and I love metrics. Secondly, audited financials are the cornerstone of a larger objective - openness and transparency in all our work. We continue to strive for this openness, publishing our a href=https://drive.google.com/a/association.drupal.org/?tab=co#folders/0B8gZDNT4xrvZeEszSEVIXzBoOW8financial statements/a quarterly, a href=https://assoc.drupal.org/node/18863recapping and recording all our board meetings/a, and chattering with you all via email, IRC (#drupal-association), social media. /p pAlthough we currently have no legal or financial obligation to conduct an annual audit, it's an opportunity we did not want to miss out on. The annual audit allows us to share an independently verified view of our financials with the community. It also allows us to learn from professionals in the field about best practices we shoudl be applying in our own work. We learn something during every audit that makes the Association stronger. /p pReady to dive in? Here's what you need to know about our 2013 audit:/p h3 What IS a financial audit anyway?/h3 pMost of us think of an audit as a bad thing - something the government does when our tax filings don't seem right. That's definitely one kind of audit. Here at the Drupal Association, and for many other organizations, an audit is an annual opportunity to independently verify your financial statements and ensure that your financial operations are as strong as they can be. Audits can be conducted internally, but because of our size and our desire for transparency, we contracted with an external CPA firm, a href=http://www.mcdonaldjacobs.com/McDonald Jacobs/a, to conduct our audit./p h3 What did our audit cover?/h3 pThe Drupal Association's fiscal year aligns with the calendar year. Our audit covered financials and practices in fiscal year 2013, Jan 1, 2013 through December 31, 2013. 2013 was a pretty stable year for teh Association in terms of operations. Though we grew signficantly and experienced a leadership change (hi there!), our programs and systems did not undergo any major changes. For 2013, the auditors looked at things like:/p ulli strongProper recording of income and expense: /strongThe first job of the auditor is to ensure that our financial statements are an accurate representation of the business weve conducted. Did we record transactions on the right date, to the right account, and the right class? In other words, if we said that 2013 revenue for programs was a certain amount, is that really true?/li li strongFinancial controls: /strongPreventing fraud is an important part of the audit. Though everyone on the Drupal Association team is fantastic to work with, it's important to put the kinds of controls in place that can prevent common types of fraud, such as forged checks and payroll changes. Auditors look to see that there are two sets of eyes on every transaction, and that documentation is provided to verify expenses and check requests. for example./li li strongPolicies and procedures: /stronga href=http://www.independentsector.org/sarbanes_oxleySarbanes-Oxley /aand other laws and regulation require that we have certain policies in place at our organization, including a whistleblower policy, for example. Our auditors looked at our policies to ensure they were in place and, in some cases, had been reviewed by the board and staff./li /ulh3 What are the documents the auditor provided?/h3 pThe complete auditor's report includes three documents for 2013:/p ulli stronga href=https://docs.google.com/a/association.drupal.org/file/d/0B8gZDNT4xrvZeVVzVzh6V3RnQW8/editAudit Communication Letter/a: /strongThis document outlines the role of the auditor to the board, and any problems encountered during the audit./li li stronga href=https://docs.google.com/a/association.drupal.org/file/d/0B8gZDNT4xrvZbXJ5bHhvNnROVkE/editManagement Letter/a: /strongThis document addresses any internal financial controls issues./li li stronga href=https://docs.google.com/a/association.drupal.org/file/d/0B8gZDNT4xrvZNzFpckdkUDN6YkE/editFinancial Statements/a:/strong All the numbers!/li /ulh3 What did our auditors find?/h3 pHonestly, not a lot, and that's a good thing. In 2012, we had a a href=https://assoc.drupal.org/node/18233very positive audit/a, but it did flag several issues for us to address and correct. In 2013, we were able to adress all of the issues raised by the auditors:/p ulli strongCurrency conversion: /strongWe manage several currencies at the Association as we do work around the globe. In 2013, we followed the advice of our auditors and have properly accounted for the conversion of currency (from Euro to US Dollar, for example) and any gains or losses associated with that conversion./li li strongRecognizing conference revenue: /strongWhen you buy a ticket to a DrupalCon, we are liable to you until we are able to deliver the service you purchased - the Con. So, if you buy a ticket, and we cancel the Con, we owe you the ticket price. Because of that, we are not allowed to recognize Con revenue (from ticket sales, sponsorships, etc.) until the conference is actually held. In 2013, we properly held all revenue associated with a Con on our balance sheet, and did not recognize that revenue as income until the month in which the Con was delivered./li li strongCapitalizing Drupal.org expenses: /strongJust like a building, a bulldozer, or a copy machine, Drupal.org is an asset. According to the a href=http://www.fasb.org/homeFinancial Accounting Standards Board/a, if we make an investment in this asset, like, say a major software upgrade, we can capitalize that expense over a standard period of time (we're using three years). This allows us to absorb the expense over the lifetime of its usefulness. We've been capitalizing any expenses associated with the completion of the D7 upgrade./li /ulh3 So what happened in 2013?/h3 pIn short, we were able to sock away a fair amount of money. Our change in net assets was +$642,461. The success of 2013 is part of what help the board decide that we can a href=https://assoc.drupal.org/node/18858make a big investment in Drupal.org in 2014/a. We are beginning to see a payoff for this investment and are thrilled that we had the cushion to sustain it./p pWe grew! In the a href=https://docs.google.com/a/association.drupal.org/file/d/0B8gZDNT4xrvZNzFpckdkUDN6YkE/edit2013 financial statements/a awe re able to make a direct comparison to 2012, our first audited year. In the Statement of Functional Expenses (which show where/how we spent our money), you can see that staffing costs increased, along with most other costs. This is a sign of our growing maturity as an organization. As a nonprofit, we work very hard to spend every penny we raise wisely, but as our community grows, so to does the need to serve that community. /p pWe still aren't telling a great story in our financials. In 2014, we set up our financials so that we can show you a little more detail. Rather than showing just income and expense overall, we can show you income and expense for each Con, Drupal.org, etc. Although we can't see it in the the audited financials yet, you can get a sneak peek in our a href=https://drive.google.com/a/association.drupal.org/?tab=co#folders/0B8gZDNT4xrvZeEszSEVIXzBoOW8financial statements./a/p h3 What else fo you want to know?/h3 pLet us know what other questions you have!/p pema href=https://www.flickr.com/photos/add1sun/3542629650/in/photolist-6p3Uny-5eYge4-7AWk55-8g5bS1-8BV5Qv-8BYavQ-8BV5UT-8BV5U4-4WpasJ-fP55ks-eAEQoD-8BV5Rt-HWhQx-HWhQn-HWhPK-5gSPK8-NxjC7-5Pppqj-dWZUqx-dWZUAg-dX6yTG-dWZUC2-dX6yZS-dX6z7f-dX6yXL-dWZUuF-rMondFlickr photo: Addison Berry/a/em/p /div/div/divdiv class=field field-name-upload field-type-file field-label-hiddendiv class=field-itemsdiv class=field-item eventable class=sticky-enabled theadtrthAttachment/ththSize/th /tr/thead tbody tr class=oddtdspan class=fileimg class=file-icon alt= title=application/pdf src=/modules/file/icons/application-pdf.png / a href=https://assoc.drupal.org/files/Public_%202013%20Drupal%20Association%20audit%20communication%20letter%20FINAL.pdf type=application/pdf; length=88268Public_ 2013 Drupal Association audit communication letter FINAL.pdf/a/span/tdtd86.2 KB/td /tr tr class=eventdspan class=fileimg class=file-icon alt= title=application/pdf src=/modules/file/icons/application-pdf.png / a href=https://assoc.drupal.org/files/Public_%202013%20Drupal%20Association%20financial%20statements%20FINAL.pdf type=application/pdf; length=207784Public_ 2013 Drupal Association financial statements FINAL.pdf/a/span/tdtd202.91 KB/td /tr tr class=oddtdspan class=fileimg class=file-icon alt= title=application/pdf src=/modules/file/icons/application-pdf.png / a href=https://assoc.drupal.org/files/Public_%202013%20Drupal%20Association%20management%20letter%20FINAL.pdf type=application/pdf; length=84238Public_ 2013 Drupal Association management letter FINAL.pdf/a/span/tdtd82.26 KB/td /tr /tbody /table /div/div/div

drunken monkey: Optimize your site search results with Visitors Voice Free

Wed, 06/04/2014 - 15:21
div class=field field-name-field-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg typeof=foaf:Image src=http://drunkenmonkey.at/sites/default/files/styles/medium/public/field_image/visitors-voice_0.png?itok=PBOs5Bwl width=240 height=240 alt= title=Visitors Voice Free, the new tool for search result customization. //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedh2TL; DR/h2 pa href=http://www.visitorsvoice.com/Visitors Voice Free/a is a great new solution that lets you easily customize your site's search results by re-ordering or changing them at will. It integrates with a href=https://drupal.org/project/search_api_solrSearch API Solr Search/a to automatically apply your changes in all searches on the site./p h2Preface/h2 pEver had a client complain about a search on their site which just didn't have the right results? Or maybe you own a site yourself and have encountered this problem? For site administrators it is often easy to see which results should be delivered for certain searches on their site (e.g., prices or opening hours) – but up to now it was woefully difficult to actually let the site search reflect this knowledge. Especially Solr, with its own elaborate scoring mechanism, is hard to influence in this respect, and the effort necessary is often not really justified if there are just one or two searches whose result order is a bit off. However, if the searches in question are important for users, this can still have a negative impact on the perception of your site as a whole./p h2Enter a href=http://www.visitorsvoice.com/Visitors Voice Free/a/h2 pThis is a free SaaS solution with a href=https://drupal.org/project/visitorsvoiceSearch API integration/a which lets you very easily customize your site's search result pages – not only re-ordering the results, but also adding or removing them as you see fit. This ensures that, especially for common or important queries, the search results help your site's visitors as well as possible to find what they are looking for./p pI have already written about a href=/blog/visitors-voiceVisitors Voice's premium search analytics offer/a (which will soon a href=http://www.visitorsvoice.com/visitors-voice-premium-offer.htmlreceive a major update/a), and this new, free service perfectly complements their existing offer – use site search analytics to find underperforming search queries, and then fix them right away with an easy-to-use, clean user interface. But, of course, the search customization functionality can also provide great value without the analytics service, if you become aware of problems via some other means (e.g., if you just make sure that the results make sense for the most common search terms)./p pJust note that the whole product is still in Beta state at the moment, so their might still be some rough edges – feedback is very welcome – and a few shortcomings are already known. For instance, at the moment only one search index per site is supported, which needs to use a a href=https://drupal.org/project/search_api_solrSolr server/a for the integration to work. Also, only the results that can be viewed by anonymous users are displayed in searches in the Visitors Voice dashboard.br / Given enough interest, these shortcomings can soon be fixed, though./p h2How does it work/h2 pIf you have a site (or a client with one) that uses Search API and Solr for its search, just install a href=https://drupal.org/project/visitorsvoicethe Visitors Voice module/a and add your Visitors Voice access key (which you receive after signing up). (If you have more than one index on your site, you'll also need to select searches on which one you want to customize.) Then just log in to the Visitors Voice dashboard and you'll be able to review the results for any search on your site and then get the option to freely change them – re-arrange their order, remove some or add others (as long as they are indexed in the index you're using). The changes will then be immediately (or at the next cron run, if you have Index items immediately disabled for the index) reflected in searches on your site.br / The access key authenticates access to this functionality to make sure no-one but you (and people given access by you) can carry out such changes./p h2Get started/h2 pIf you'd like to take a look yourself before signing up for anything, there is a href=http://www.visitorsvoice.com/live-demo.htmla live demo/a which you can try./p pOr just a href=http://www.visitorsvoice.com/sign-up-free.html?partnercode=drunkenmonkeysign up for a free account/a and try it out on your own site right away. (With my partner code drunkenmonkey, you will receive a 10% discount on all of their premium services if you decide to use some of them later.)/p pIf you'd like to talk about some custom solution, or chat about something else, you can contact the Visitors Voice team at a href=mailto:info@visitorsvoice.cominfo@visitorsvoice.com/a./p h2Commendation/h2 pI also want to express my gratitude here that in the course of this project the Visitors Voice team has decided to a href=http://www.visitorsvoice.com/we-sponsor-search-api-solr-search-module.htmlgenerously sponsor ongoing maintenance of my Solr module/a in addition to my contract work for them. Drupal Karma++!/p /div/div/div

Blair Wadman: DrupalCamp Wroclaw Recap

Wed, 06/04/2014 - 15:12
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpWhen a href=http://codewriters.co.ukMarcin Padjdzik/a suggested that we fly to Poland to give a talk at a DrupalCamp, I jumped at the chance. He later mentioned how surprised he was not to have to convince me! Especially considering neither of us had spoken at a conference before. The logic was simple: flying to a place where we knew that the audience would be strangers would make our first talk a whole lot easier. Luckily that theory proved to be correct!/p pI had a great time in Wroclaw. It is a lovely town and very scenic and the people seemed really friendly and relaxed. I spent every evening socialising with locals who were very welcoming. It was great to to spend the evenings that way rather than eating out at touristy restaurants./p pThanks go to the organisers for setting up and running this camp. The Drupal community is fairly small in Poland, so hats off to them for making this a success. They have been trying to attract English speakers to make it altogether more of an international affair. I think that is a great move and I can see it increasing in popularity over the next few years./p pKeep reading to find out more about the camp.../p /div/div/divdiv class=field field-name-field-tags field-type-taxonomy-term-reference field-label-abovediv class=field-labelTags:nbsp;/divdiv class=field-itemsdiv class=field-item even rel=dc:subjecta href=/drupal/drupal-events typeof=skos:Concept property=rdfs:label skos:prefLabelDrupal Events/a/divdiv class=field-item odd rel=dc:subjecta href=/drupal/planet typeof=skos:Concept property=rdfs:label skos:prefLabelPlanet Drupal/a/div/div/div

Dries Buytaert: A method for giving credit to organizations that contribute code to Open Source

Wed, 06/04/2014 - 13:46
div class=field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-abovediv class=field-labelTopic:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/tag/drupal typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Drupal/a/div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpIf we want to encourage more organizations to contribute to Drupal and hire core developers, we should start to give them credit for their contributions. I'd love to see us maintain a page on Drupal.org that shows which companies contribute to Drupal and in what capacity. This credit provides these organizations a tangible benefit in recruiting developers, demonstrating their expertise, and more. Credit is a powerful motivator for individuals, but also for businesses. It is a form of trust currency. /p pIt is great that we give individual contributors credit for their contributions, and we should continue to do so. However, I'd like to extend that to organizations, both to the Drupal agencies as well as their customers. Mapping out how contributions get funded can be great for individuals, customers and digital agencies./p pA great way to start doing this, is to adopt a new format for Git commit messages. I'd like to propose the following format:/p pcode$ git commit -am Issue #n by INDIVIDUAL@AGENCY*CUSTOMER: message./code/p pWe prefix agencies with @ and customers with *. I believe this provides us the necessary flexibility. We could choose to store this in a href=https://www.kernel.org/pub/software/scm/git/docs/git-notes.htmlGit Notes/a, if we prefer, but that is not the main point./p pContributed a feature as an individual consultant directly for a customer or end-user:/p pcode$ git commit -am Issue #n by INDIVIDUAL*CUSTOMER: message./code/p pContributed something in your spare time and don't want to give credit to your employer:/p pcode$ git commit -am Issue #n by INDIVIDUAL: message./code/p pLet's put it all together with a real example. Imagine Sam, Megan and Tim collaborated on fixing a performance bug. Sam helped in the 20% time provided by her employer Acquia, Megan helped in her spare time after work, and Tim worked on this on behalf of his employer, Pfizer, who is affected by this bug. Ideally, the commit message would look like this:/p pcode$ git commit -am Issue #42 by Sam@Acquia, Megan, Tim*Pfizer: fixed performance bug./code/p pThe great thing about this approach is that we can adopt it today and worry about analyzing the data later. It also works regardless of where your Drupal code is hosted (Drupal.org, GitHub, etc) or what your source code management system of choice is (Git, SVN, etc). In fact, I believe all Open Source projects would benefit from this level of transparency and that giving credit directly into the commit message makes it very transferable. /p pIf adopted, we'll want to build tools to help us create these commit messages (i.e. have contributors provide proper attribution in a new project issue field so the maintainers/committers don't have to manually create it)./p pWith this level of transparency, we can start to study how our ecosystem actually works; we can see which companies contribute back code and how much, we can see how much of the Drupal project is volunteer driven, we can better identify potential conflicts of interest, and more. But most of all, we can provide credit where credit is due and provide meaningful incentives for organizations to contribute back to Drupal. I believe this could provide a really important step in making Drupal core development more scalable./p pI'd love to hear your thoughts about us giving organizations credit./p /div/div/div

Sina Salek Official Site: NEW Drupal Module : Hook Post Action

Wed, 06/04/2014 - 13:13
p style=text-align: justify;Currently Drupal core does not offer any hook to do actions after a node/entity is inserted/updated/deleted in Database. So for example you can not send an email mentioning the node after the node is inserted because Drupal uses SQL transactions and the node is not yet fully written to database when hook node presave is called so if for any reason the transaction is rolled back, users will receive a false mail./ppSo a href=https://drupal.org/project/hook_post_actionHook Post Action/a module introduces several new Drupal hooks to overcome this limitation/ppa href=http://sina.salek.ws/content/new-drupal-module-hook-post-action target=_blankread more/a/p

DrupalCon Amsterdam: Front-enders, now’s the time!

Wed, 06/04/2014 - 09:34
div class=field field--name-body field--type-text-with-summary field--label-hiddendiv class=field__itemsdiv class=field__item evenpNow that everybody is following DrupalCon Austin, this is a good moment to get inspired and propose your session for DrupalCon Amsterdam a href=https://amsterdam2014.drupal.org/tracks#frontendFrontend track/a./p pThis year is when Drupal 8 is going to be released and is going to bring a clean, fresh and totally rebuilt front-end. Front-end and design related topics that are not specific to Drupal are very welcome. If you need some help on deciding your session subject just take a look at our suggestions for the Front-end Track./p pWe know you have something interesting to show and we will be really glad if you want to share it with all these fellow Drupalists attending DrupalCon Amsterdam. So, please don’t be shy, don’t be afraid. You’re an interesting and good looking person./p pa href=https://amsterdam2014.drupal.org/users/lewisnymanLewis Nyman/a and a href=https://amsterdam2014.drupal.org/users/rteijeiroRuben Teijeiro/a are here to guide you during your session preparation and to help you with any concerning question. Are you excited to share new tools and techniques with community and geek out with them? a href=https://amsterdam2014.drupal.org/submit-sessionSubmit your session now!/a/p /div/div/div

Zero to Drupal: DrupalCon Austin Day 1 Recap

Wed, 06/04/2014 - 08:02
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encoded pI'm sure the Planet is flooded with DC recaps but it couldn't hurt to have one more so here's mine:/p ul listrongRegistration/strong literally took seconds. Although I wasn't thrilled about the shirt color this year (cranberry/purple), the registration process was smooth and efficient/li listronga href=http://buytaert.net/Dries'/a keynote/strong was pretty good. I especially liked how he reinforced the point that a href=http://drupal.orgDrupal 8/a is positioning itself to be relevant in a rapidly-changing web landscape. I would have liked to see a deeper technical breakdown, as opposed to the high level problem/solution talk, but overall it was good./li listrongThe a href=https://austin2014.drupal.org/session/dependency-injectionDependency Injection/a session/strong was pretty eye opening. While I haven't used DI in Drupal/PHP Projects, I have used it in a href=http://www.mariocasciaro.me/dependency-injection-in-node-js-and-other-architectural-patternsNode.js/a and a href=https://docs.angularjs.org/guide/diAngular.js/a. I'm super excited to embrace DI in D8 now./li listrongLunch/strong was nice...although I regret the second cookie./li liThe strongsession on a href=https://austin2014.drupal.org/session/drupal-8-theme-system-hooktheme-twig-templateTwig in Drupal 8/a/strong was okay but very short. In fact, it was so short that I was stunned when I heard the words Thank you at the conclusion of their presentation. Either way, I did learn a little about Twig in D8 which was cool./li listronga href=https://austin2014.drupal.org/session/here%E2%80%99s-drupal-tonight-tonight-show-jimmy-fallonThe Tonight Show/a session/strong was amazing! It was so awesome to see an example of using Drupal as an API to deliver content to connected front-ends (ie a href=http://backbonejs.orgBackbone.js/a). It was also very confirming as we're currently building a set of connected front-ends using a very similar approach (hint hint, we're using a href=http://angularjs.orgAngular.js/a)./li listrongDinner/strong at a href=http://stubbsaustin.com/Stubbs BBQ/a was phenomenal! The spinach was the kind of spicy/creamy that makes you want to slap yo momma!/li /ul h3Tomorrow (Wednesday)/h3 pTomorrow, I'm looking forward to more networking and sessions. If you live in or around the St. Louis area, and are at DrupalCon, feel free say hey. We're always looking for other developers in the St. Louis region to work with and I'd love to connect!/p /div/div/divh3Tags/h3ul class=inlineli class=firsta href=/tags/drupal-planetdrupal-planet/a/li lia href=/tags/drupalcondrupalcon/a/li li class=lasta href=/tags/drupalcon2014drupalcon2014/a/li /ul

Midwestern Mac, LLC: Thoughts on the Acquia Drupal Developer Certification Exam

Wed, 06/04/2014 - 04:55
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedblockquotepstrongtl;dr/strong: I passed, the exam is better than I was expecting, but I still have mixed feelings about Acquia's Drupal Developer Certification program./p/blockquote p style=text-align: center;img src=/sites/midwesternmac.com/files/acquia-certified-developer.jpg width=325 height=189 alt=Acquia Certified Developer 2014 //p/div/div/div

Drupal Easy: DrupalEasy Podcast 131: DrupalCon Austin Day 1

Wed, 06/04/2014 - 01:52
div class=field field-type-link field-field-embed a href=http://podcasts.drupaleasy.com/DrupalEasy_131_20140603.mp3 rel=enclosureDrupalEasy Podcast 131/a /div pAustin has begun and Mike, Ted and Ryan are all on the prowl for interesting subjects and people at the Con. Dani Nordin of Boston gives us a quick update on her talk subject, we hear from Dave Datars, the CEO of Acquia's fresh acquisition, TruCentric, a user experience personalization company from Toronto. We also hear from Mike, who gets to interview Dries and all of the keynotes live on stage. See the a href=https://www.youtube.com/watch?v=gnERPdAiuSoDrupalCon keynote video/a for that interview./p pa href=http://drupaleasy.com/podcast/2014/06/drupaleasy-podcast-131-drupalcon-austin-day-1 target=_blankread more/a/pdiv class=feedflare a href=http://feeds.feedburner.com/~ff/DrupalEasy?a=u9JrGEB4koQ:Uroarwyaq3U:yIl2AUoC8zAimg src=http://feeds.feedburner.com/~ff/DrupalEasy?d=yIl2AUoC8zA border=0/img/a a href=http://feeds.feedburner.com/~ff/DrupalEasy?a=u9JrGEB4koQ:Uroarwyaq3U:qj6IDK7rITsimg src=http://feeds.feedburner.com/~ff/DrupalEasy?d=qj6IDK7rITs border=0/img/a /divimg src=http://feeds.feedburner.com/~r/DrupalEasy/~4/u9JrGEB4koQ height=1 width=1/

Exaltation of Larks: Meet the Larks at DrupalCon Austin

Wed, 06/04/2014 - 01:42
pimg src=/sites/all/files/250px-AustinSkylineLouNeffPoint-2010-03-29-b.JPG align=right height=100 width=185 alt=Droplabs hspace=5 vspace=10 / Exaltation of Larks is at DrupalConnbsp;Austin! /p pThis is the Drupal community#8217;s biggest conference for all things Drupal and it#8217;s a great chance for you to meet all the Larks who are innbsp;attendance. /p pTo set up a meeting with us, a href=/contactsend us a message/a or mention @a href=https://twitter.com/LarksLALarksLA/a on Twitter. We#8217;d love to talk with you about a href=http://droplabs.netDroplabs/a, the Drupal incubator we co-founded in Los Angeles in 2011, how it#8217;s become the a href=http://droplabs.net/news/droplabs-recognized-as-worlds-top-drupal-locationTop Drupal Location/a in the world, and how to start a Droplabs in yournbsp;city./p pimg src=/sites/all/files/partners/droplabs-180x62.jpeg align=left height=62 width=180 alt=Droplabs hspace=5 vspace=5 / If you#8217;re in the Los Angeles area and aren#8217;t going to DrupalCon, you#8217;re welcome to join Lee Vodra, one of the co-founders of both Exaltation of Larks and Droplabs, for a a href=https://groups.drupal.org/node/425898Droplabs Open House/a on Thursday, Junenbsp;5th. /p pDroplabs will be announcing its a href=http://droplabs.net/academyDroplabs Academy/a and tuning in to the live stream of the a href=https://austin2014.drupal.org/liveDrupalCon Austin Closing Session/a. Drop by and meet some of the Larks who are in Southern California and say farewell to DrupalCon Austin and #8220;hello!#8221; to DrupalCon Amsterdam, DrupalCon Bogota, and the surprise location of DrupalCon North Americanbsp;2015./p pa href=https://www.larks.la/articles/meet-the-larks-at-drupalcon-austin target=_blankread more/a/p

Exaltation of Larks: Prescribing Drupal: CMEDownload's Video-on-Demand Subscription Service for Continuing Medical Education

Wed, 06/04/2014 - 00:38
pa href=https://www.larks.la/articles/prescribing-drupal-cmedownload-video-on-demand-subscription-service-for-continuing-medical-educationimg src=https://www.larks.la/sites/all/files/clients/cme-home.png width=250 height=208 hspace=5 alt=CMEDownload align=right border=0 //a a href=https://www.cmedownload.comCMEDownload/a is a continuing medical education (span class=capsCME/span) service that gives physicians and medical students access to a high-quality library of thousands of lectures in video and audio formats for computers and mobile devices. This video on demand (span class=capsVOD/span) service contains thousands of lectures and hundreds of hours of continuing medicalnbsp;education./p pThe service is a good example of Drupal being used to power a span class=capsMOOC/span, or a href=https://en.wikipedia.org/wiki/Massive_open_online_coursemassive open online course/a: it combines digital-age distance learning with unlimited participation and open access to educational materials. CMEDownload has since been joined by other span class=capsMOOC/span services using Drupal, including a href=http://www.edx.orgedX.org/a./p pAttending conferences can be tricky for busy medical professionals. CMEDownload partners with top-level national and international medical conferences so that physicians can view lectures without leaving their homes, jobs, or families. Customers who sign up for an all-access pass can stream or download any of the thousands of videos and also earn certificates in continuing medical education through watching thesenbsp;videos./p pExaltation of Larks has been working with CMEDownload since 2012. What started as a standard site audit #8212; with a focus on improving website performance and fixing security issues #8212; turned into a major refactoring project and infrastructure overhaul. With the results from our initial site audit, we have steadily improved the website in almost everynbsp;way. /p pTo this day, Exaltation of Larks continues to maintain and support the CMEDownload website. We are a fully-integrated, full-service design and engineering firm, and in the case of CMEDownload we have provided development, maintenance and support, infrastructure consulting and managed hostingnbsp;services./p h3span class=capsIDENTIFYING/span span class=capsCMEDOWNLOAD/span#8217;snbsp;span class=capsNEEDS/span/h3 pSujal Mandavia, CMEDownload#8217;s span class=capsCEO/span, is a sharp businessperson with a great product. He wanted to improve CMEDownload#8217;s security and performance and he needed a sleeker, faster-moving way to present and organize the service#8217;s video media, as well as improve the user experience of the customer-facingnbsp;features./p pAs someone with development experience himself, Sujal knew he needed to find a team that was familiar with site architecture for media-heavy sites, and who understood how to organize, catalog, and serve up large amounts of video media. Sujal searched extensively for the right team to handle the upgrades henbsp;needed./p pspan class=dquo#8220;/spanThe Larks#8217; consistency was a plus,#8221; Sujal says. #8220;So was their level of experience.#8221; Both companies have offices in Los Angeles #8212; CMEDownload is an span class=capsLA/span startup and Exaltation of Larks has a Los Angeles-based team #8212; which made working together an easynbsp;decision./p h3span class=capsOUR/span span class=capsPROGNOSIS/span span class=ampamp;/spannbsp;span class=capsSOLUTION/span/h3 pstrongCode Audit and Refactoring/strongbr / We began with a full infrastructure audit. This included a review of CMEDownload#8217;s web hosting, which at the time of our audit was on a dedicated Xserve server. This server was occasionally crashing and we took emergency measures to improve data integrity in the event that the MySQL database server crashed. At the same time, our implementations significantly improved the databasenbsp;performance. /p pUnderstanding the way the original CMEDownload website was constructed required high technical expertise. Through our audit, we learned we would need to untangle some of the previous development work. We refactored large parts of the codebase to use high quality third-party modules that are available on Drupal.org to provide the same functionality, while performing a code audit of the 17 custom modules installed. (The previous vendor had developed significant parts of the Drupal codebase from scratch and in many cases had reinvented thenbsp;wheel.) /p pstrongManaged Hosting /strongbr / CMEDownload is now hosted on Amazon Web Services (span class=capsAWS/span). We#8217;ve utilized span class=capsAWS/span extensively to reduce CMEDownload#8217;s web hosting costs by almost 50%. These changes include refactoring and optimization of the codebase and database, which have lowered both web hosting fees and ongoing maintenancenbsp;costs. /p pWe provide long-term support and maintenance services for CMEDownload. This includes ticket-based support, ongoing bug fixes, and working directly with CMEDownload’s staff. Through our support system, we provide CMEDownload with services for all of their hosting and infrastructurenbsp;needs. /p pstrongPerformance and Scalability/strongbr / We improved CMEDownload#8217;s page load speeds through extensive database tuning and performed significant database maintenance tasks, including automated integrity checks and optimization of the databasenbsp;tables. /p pModules we installed and configured included a href=https://drupal.org/project/varnishVarnish/a, a href=https://drupal.org/project/expiresExpires/a and a href=https://drupal.org/project/purgePurge/a, and we added a href=https://drupal.org/project/viewsViews/a caching that was missing for nearly all the blocks and pages, including video queues, playlists, completed quizzes,nbsp;etc./p pWe also implemented the a href=https://drupal.org/project/cdnspan class=capsCDN/span/a module for Drupal in order to use a content delivery network. With the span class=capsCDN/span, CMEDownload is able to deliver the files in its enormous video library much more quickly and efficiently to itsnbsp;customers./p pstrongSecurity Improvements/strongbr / One of the first things we worked on was improving security, fixing potential information disclosure vulnerabilities. Many pages and custom lists of information displayed by a href=https://drupal.org/project/viewsViews/a did not check for access control, which we promptlynbsp;fixed./p pAs is standard with e-commerce sites we work on, we performed an e-commerce audit to ensure that customer data was protected. This was also one of the first projects where we enforced span class=capsHSTS/span, or span class=capsHTTP/span Strict Transport Security, a security implementation created innbsp;2012. /p pspan class=dquo#8220;/spanspan class=capsHSTS/span is a powerful and relatively little-used method for increasing security and even improving usability by preventing mixed content warnings. a href=/articles/using-hsts-for-better-security-and-a-better-developer-experienceWe recommend using span class=capsHSTS/span on all our projects that use span class=capsSSL/span/a,#8221; says Christefano Reyes, of Exaltation of Larks. #8220;It’s been part of our standard security package for a while and we would love to see more websites usingnbsp;it.#8221;/p pstrongSubscription Issues/strongbr / Customers are presented with an interface similar to Netflix: members have a queue to which they add videos they want to save for later viewing. We added functionality that allowed members to reorder their queue and delete videos from it. CMEDownload also uses the Drupal a href=https://drupal.org/project/itunesiTunes/a module to expose users#8217; playlists innbsp;iTunes./p p align=centera href=https://www.larks.la/articles/prescription-for-drupal-cmedownload-video-on-demand-subscription-service-for-continuing-medical-educationimg src=https://www.larks.la/sites/all/files/clients/cme-queue-450x304.png width=450 height=304 hspace=5 alt=CMEDownload queue align=center border=0 //a/p pWe fine-tuned custom modules that determined how a lecture or course was labeled and displayed to subscribers, and who had permission to view what content. We also worked on streamlining a method for offering discount codes. Many lectures and courses have attached quizzes, to test subscribers on the material before they can gain a certificate of completion. We worked on CMEDownload#8217;s custom modules to simplify the process of displaying these quizzes tonbsp;viewers./p pCMEDownload also keeps track of who has watched which videos, and issues the corresponding continuing education credits and certifications. CMEDownload uses custom code and scripts to calculate these credits and display them. These proprietary methods enable CMEDownload to track the views of individualnbsp;members./p pExaltation of Larks is an a href=http://www.authorize.netAuthorize.Net/a development partner and we implemented their service with Drupal to better manage CMEDownload#8217;s subscriptionnbsp;information./p pAnother customer-facing change we implemented was a switch from FlowPlayer to JWPlayer for streaming video. We chose a href=#8221;https://drupal.org/project/jwplayerJWPlayer/a because support for JWPlayer is very good and the player does most of the work: it can play span class=capsHTML/span and Flash files in one instance, whereas with FlowPlayer it#8217;s necessary to switch between two types to play span class=capsHTML/span or Flash. CMEDownload and their customers are happy with thenbsp;results./p h3span class=capsGIVING/span span class=capsCMEDOWNLOAD/span A span class=capsCLEAN/span span class=capsBILL/span span class=capsOF/spannbsp;span class=capsHEALTH/span/h3 pOur customer is very satisfied. Sujal#8217;s only complaint was that he wished Exaltation of Larks had been on the project from day one. #8220;I think companies like Larks have made it easier for folks to access the power and community of open source without being experts themselves,#8221; Sujalnbsp;says. /p pSujal believes the Los Angeles startup scene has changed for the better in recent years. He recognized the need for a span class=capsCME/span product and he filled that need, but the startup community was smaller and technical resources were harder to find at the time CMEDownload was founded. Open source software was available but only easily utilized by developers and hardcorenbsp;aficionados. /p pHere at Exaltation of Larks, we#8217;re extremely happy to have helped CMEDownload with their success. We are currently working with CMEDownload on upgrading from Drupal 6 to 7, which will make feature development considerably faster and further reduce support and maintenancenbsp;costs./p pa href=https://www.larks.la/articles/prescribing-drupal-cmedownload-video-on-demand-subscription-service-for-continuing-medical-education target=_blankread more/a/p

Open Source Training: Using the Drupal FullCalendar Module

Tue, 06/03/2014 - 22:54
pimg style=float: right; src=http://www.ostraining.com/images/stories/guru/courses/thumbs/fullcalendar.png alt=FullCalendar Videos /If you want a calendar on your Drupal site, the FullCalendar module is one of your very best options./p ul liIt mimics the look of Google Calendar and can even import from Google Calendars/li liYou can drag-and-drop events to update them./li liYou can color code events on many different criteria./li /ul pBelow you can watch a 3 video introduction to FullCalendar, which is part of a href=http://www.ostraining.com/courses/class/drupal/fullcalendarour much longer FullCalendar class/a./pimg src=http://feeds.feedburner.com/~r/ostrainingdrupal/~4/nY4trdGJtl4 height=1 width=1/

LightSky: 5 Tips for Keeping Your Drupal Site Organized

Tue, 06/03/2014 - 16:05
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpa href=https://drupal.org target=_blankDrupal/a is perhaps the most powerful framework/CMS available today.  I kid you not, there is almost nothing that can’t be created with Drupal.  From the most basic brochure site, to a way to track things for your family or business, and even large corporate applications tracking inventory and integrating with other tools.  Regardless of which category you fit in to some important steps should be taken to ensure that you are keeping your Drupal project clean and clutter free./p h2 Tip #1: Organizing your modules directory/h2 pAccording to Drupals best practices, you should put all of your modules into your sites/all/modules folder. Drupal will recursively search that directory for modules. Because of this, I like to encourage developers to take that one step further and create subdirectories to store modules in. For example, for the sites that we develop, we have the following directory structure in place:/p psites/all/modulesbr /    | - contribbr /    | - custombr /    | - featuresbr /    | - dev/p pThe contrib folder contains all modules downloaded from drupal.org. The custom modules folder contains any custom modules that we have to write for the site. The features directory contains any features exported for the site. The dev folder contains any modules that are used for development. Typically, I add the dev folder to the sites .gitignore file so that modules contained within it don’t make it to production./p pThere really isn’t a right or wrong way to organize your modules folder, but one thing you should know is that if you do decide to go this route, you won’t be able to update via the core update module, however, you will still be able to update your modules via drush./p pIf you already have an existing site and are looking to organize your modules directory, be sure to rebuild the registry after moving your modules (and as always, make a backup). This will ensure that drupal will be made aware of your new module locations and will prevent any errors./p h2 br / Tip #2: Creating Useful Content Types/h2 pOne thing that can sometimes confuse sitebuilders is when to create a new content type, or when to simply modify an existing one. A good rule of thumb is to take all of your features that you wish for the site to have, and then pick out the nouns (i.e: news, events, podcasts, videos, etc)./p pI also like to encourage that the content types be singular, not plural. I realize this may seem a little nit-picky, however, when a user goes to add a piece of content, they usually add those one piece at a time, so the admin interface should reflect that./p pAlso, it’s a good idea to ensure that your content types, and any respective fields, are named in such a way that description text isn’t needed to describe what they do. For example, if you are creating a content type that will add images to a homepage slider, then your content type should be called “Homepage Slideshow Image”./p pIt’s also a good idea to ensure that when adding fields to a content type, that you do so in a way that the label accurately describes what this field does, and that in cases where it doesn’t, you add appropriate description text. Not only does this help with administrative usability, it also helps ensure you remember that fields purpose long after the site is pushed to production./p h2 Tip #3: Primary Navigation Structure/h2 pWhen trying to determine the site organization for your visitors, a lot of things must be taken into consideration. Who is your target user? What information are they seeking when they come to your website? What is the best way to help them find what they are looking for? Often times, a visitor will come to your website for a reason, and so your navigation structure should help guide them to what they are looking for. Having a properly organized site structure makes for a better user experience./p pI generally consider two different approaches when it comes to site navigation. The organization oriented approach, and the visitor oriented approach./p pThe organization oriented approach would have a navigation structure similar to what you see on our site (Home, About Us, Our Services, etc). This is typically useful when you have visitors coming to your site that fall into one or two categories. For example, most of our visitors are looking for our content, services, or want to contact us. Because they already have an idea as to what they are looking for, we guide them through what our organization has can offer./p pIf your website is more geared towards helping users find information, or if you have a limited target audience and are hoping to pull them deeper into your site, you may choose to go with a visitor oriented navigation structure. Let’s use one of our clients websites, The City of Goshen (link). Like many municipalities, the City of Goshen knew that they had people coming there seeking certain types of information.  You can see from there navigation structure that they had three types of visitors to their site. : Residents, Visitors and Businesses. So when generating their site structure, they choose to categorize the sites content in a way that they could drop it into one of those buckets./p pPersonally, I don’t feel as though one type of navigation structure is better than the other, but regardless of which one you choose, keep in mind that your menu structure should be organized. Be sure to use your primary navigation items as “buckets” to hold content, and try to go no further than a secondary or tertiary level of navigation./p h2 Tip #4: Views/h2 pa href=https://www.drupal.org/project/views target=_blankViews/a can be tricky, especially for someone new to the world of site building in Drupal. The biggest tip I can have is to try to limit the number of views that you have. Keep in mind that views have the ability to have multiple pages/blocks/feeds/etc in one view, so be sure to make the most out of each view that you build, and avoid doing work twice. As a rule of thumb, I would have one view for each content type (when it’s needed). So if I have a blog, I’d have my blog page (/blog) any blocks that the blog would need (such as a recent posts block) and if needed a RSS feed included all in that same view. As with content types, be sure to name your views in such a way that they are self explanatory and use the description field when appropriate./p h2 Tip #5: URL Aliases/h2 pIf you aren’t using a href=https://www.drupal.org/project/pahtauto target=_blankpathauto/a in your site, you should be. It helps ensure that your URLs are clean and conform to standards.  You want to automate as many tasks that will help your SEO as you can, and pathauto automates the foundation of each pages SEO, the URL./p pThe big thing I like to stress with URL aliases is to have your individual content types have their own pattern. What I mean is that all your blog posts should have a path of blog/* your news items a path of news/*. This can be accomplished by using the [node:title] token./p pWith regard to primary navigation items, I like to have the URL aliases based off of the menu structure. Let’s say that you have a primary navigation page called “About Us” and a secondary page called “Our Staff” located underneath it, you’d likely want your URL alias to be “/about-us/our-staff”. The easiest way to accomplish this is to use the following pathauto token for basic pages (or whatever non-noun content types you have)/p p[node:menu-link:parent:title]/[node:title]/p pHopefully you found the tips contained within this article helpful. If you have any other site organization tips, please add them in the comments below./p /div/div/div

Digett: Varnish, Memcache — Cache All the Things BUT Still Run Dynamic Code

Tue, 06/03/2014 - 15:23
div class=field field-type-filefield field-field-teaser-image div class=field-items div class=field-item odd img src=http://www.digett.com/sites/default/files/imagecache/blog-main-image-full-node/filefield_images/field_teaser_image/x-all-the-things.jpg alt=Cache all the things but still run dynamic code title= class=imagecache imagecache-blog-main-image-full-node imagecache-default imagecache-blog-main-image-full-node_default width=275 height=206 / /div /div /div pThere are quite a few caching options out there, and we frequently combine several services to cache every little piece of a site. Think about it: standard Drupal cache, Varnish, Memcache, Redis, various files coming from CDNs, and more./p pa href=http://www.digett.com/blog/06/03/2014/varnish-memcache-cache-all-things-still-run-dynamic-code target=_blankread more/a/p

Dries Buytaert: Acquia acquired TruCentric

Tue, 06/03/2014 - 12:17
div class=field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-abovediv class=field-labelTopic:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/tag/drupal typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Drupal/a/divdiv class=field-item odda href=/tag/acquia typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Acquia/a/divdiv class=field-item evena href=/tag/business typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Business/a/div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpWe’re excited to announce that a href=http://acquia.comAcquia/a acquired a href=http://trucentric.comTruCentric/a, a software-as-a-service company that is focused on providing personalization for websites. Earlier this year a href=http://buytaert.net/announcing-acquia-liftwe launched Acquia Lift/a, which brings testing and personalization capabilities to Drupal sites. With TruCentric, we acquired not only a great complementary product that we will integrate with Acquia Lift, we also gained a great team with a long history and strong leadership in marketing automation technologies. /p pa href=http://trucentric.comTruCentric/a uses real-time and historical data to build a deep understanding of both anonymous and authenticated visitors. Every action that a visitor takes and every piece content that they look at continuously updates this profile. TruCentric can infer a visitor's persona, interests, preferred content, and level of engagement as well as site-specific characteristics such as favorite team (for example on a sports destination), favorite products (such as on an e-commerce site), or favorite activities (for example on a travel site). This data can be married with existing customer and audience data, and tied together across multiple online destinations. Profiles can also be connected together across the different devices that a visitor uses. /p pPaired together with Acquia Lift, the joint solution will provide a powerful level of understanding about a website's visitors resulting in much more effective testing and targeting. Additionally, the solution will incorporate TruCentric's content recommendation and marketing offer capabilities. Content recommendations suggest and promote links to content that are most likely to interest a user, increasing engagement and time on site. Marketing offers enable the most relevant promotions, sign-ups and other types of calls-to-action to be selectively shown to site visitors, increasing conversions. Both offers and recommendations can be easily configured by site builders or marketers by selecting from a variety of rules, algorithms and filtering criteria. /p pLonger term, I'm particularly excited about the impact of a href=http://www.acquia.com/products-services/website-personalizationAcquia Lift/a (with a href=http://trucentric.comTruCentric/a) on e-commerce. Many brands and corporations today offer fragmented and poorly integrated shopping experiences that confuse the customer, are difficult to manage, and ultimately, leave money on the table. Top e-commerce brands have proven that content-rich product stories with the deep personalization and seamless e-commerce integration increase conversion rates significantly. We believe that building a software platform that uses the world’s best personalization practices in combination with the best possible content management capabilities presents us with a really big opportunity./p /div/div/div

Daniel Pocock: Click to dial for mobile users of your web sites

Tue, 06/03/2014 - 11:47
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpIf there was a trivial way to let mobile phone users call you from your web site, just by adding a single HTML element to the page, would you do it?/p pIn fact, there is. It doesn't even require a href=http://danielpocock.com/webrtc-calling-firefox-android-chromium-linuxa mobile WebRTC browser/a. It works for virtually any smartphone and a growing number of desktops too./p h3Introducing the tel: URI/h3 pThe emtel:/em URI is defined in a href=http://tools.ietf.org/html/rfc3966RFC 3966/a./p pFor most mobile phone users, if they click a link to a emtel:/em URI, their browser will copy the link into their dialer for convenience./p pTo protect users against calls to 0900 premium rate numbers, the user still has to make one more click to confirm they want to dial./p h3Examples/h3 pHere is a emtel:/em URI:/p blockquoteptel:+44-20-7135-7070/p/blockquote pHere is how to create a link with it:/p pcodelt;a href=tel:+44-20-7135-7070gt;020 7135 7070 (from abroad: +44 20 7135 7070)lt;/agt;/code/p pand here is how it looks on the page:/p blockquotepCall me on a href=tel:+44-20-7135-7070020 7135 7070 (from abroad: +44 20 7135 7070)/a/p/blockquote pand here is what appears on the mobile device after a user clicks the emtel:/em URI link:/p pimg src=http://danielpocock.com/sites/danielpocock.com/files/dialer.png //p h3For desktop users too/h3 pMany desktop users can also benefit from emtel:/em URIs. If they have a modern telephone system in their office, the system administrator may have already added a emtel:/em URI handler to their desktop./p pAnyone with a software PBX or a SIP account can also potentially use the a href=https://addons.mozilla.org/en-us/thunderbird/addon/tbdialout/TBDialOut extension for Firefox/a to help convert emtel:/em URIs into emsip:/em URIs or URLs for some bespoke dialer./p pFor those who want extra convenience, the a href=https://addons.mozilla.org/en-us/thunderbird/addon/telify/Telify extension for Firefox/a will look for phone numbers in any HTML page and display them as emtel:/em URIs so you can click them even if the web developer overlooked this./p /div/div/div