I took this photo at DrupalCamp Sydney last weekend. Not only were these three men from very different parts of the world, but they also had different levels of expertise, and different interests. Sure, no women in this picture, but I was taking the photo ;-)June 29, 2014
Difference is a good thing. Erynn Petersen spoke at DrupalCon Austin about the real bottom line advantage diversity brings to teams. She also spoke about the importance of tolerating some level of conflict and dissent. It makes us stronger. Challenging and testing ideas usually makes those ideas better.
It's a balancing act.
Most of the changes in this release are based on work by Peter Pöschl to make the behavior of the C TAP library more consistent with the Perl Test::More functions. ok, okv, and all the is_* functions now return true if the test succeeds and false if it fails, allowing them to be used in conditionals. diag and sysdiag now always return 1, making it easier to insert (possibly temporary) calls into compound statements while debugging test cases.
The C TAP library now provides a new breallocarray API that does the same thing as brealloc but takes calloc-style arguments and checks internally for integer overflow. Tests for integer overflow during memory allocation have also been added to several other parts of C TAP Harness, including the runtests harness and other internals of the C TAP library. These probably don't matter a tremendous amount for test code, but best to be safe and consistent everywhere possible.
All uses of sprintf have now been replaced with a simpler internal string concatenation function that checks for allocation overflow. The previous usage was probably safe, but this approach is much easier to audit.
You can get the latest release from the C TAP Harness distribution page.
On May 15th, Mediacurrent presented the 3rd annual Atlanta Drupal Business Summit. Hundreds of business leaders from some of the top companies in Georgia came together to learn about how Drupal, the powerful open-source content management system (CMS) can provide personalized digital experiences, reduce total cost of ownership, and deliver superior business outcomes with speed and scale.
Some highlights include:
If you are reading this thinking you are going to get some helpful Drupal development or site building tips...sorry! As a marketing person who runs a hardcore Drupal development shop, I often relate more to our clients than our developers. I am sure there are often times when my team wants to clock me over the head with their MacBook Pros as I play the role of the client during internal discussions.The fact is, many of the folks who are working with Drupal are more like me than my developers.That is why they hire us.
The past few weeks, I've been thinking over and over again trying to rationalize how to best foster a culture of inclusivity and diversity. This in the context of creating a productive work climate of trust and respect.
I think it is fair to say we all want other people to feel welcome and respected. Where that gets difficult is that feeling welcome and respected means something different to different people. What seems harmless to you could be hurtful to another. For example, some people tend to be more concerned about the use of crude or sexual language than others. It's a complex issue based on a range of factors including gender, race, age, geographical location and more. There is also a lot of academic research about the fact that derogatory and vulgar language or sexually graphic behavior creates a hostile environment. These two facts combined, makes it a popular topic in the context of diversity and inclusion.
However it is not just a popular topic, it is also a very difficult topic. Why do we feel defensive and argumentative when confronted with a value and belief system different from our own? It is one thing to challenge someone's take on, say, a country's healthcare system, it is another thing to challenge someone's beliefs. Challenge someone's beliefs, and you challenge their sense of self.
Given all this, is it possible to be inclusive of everyone? For example, can we be inclusive of those who are easily put off by sexually graphic or vulgar language and at the same time be inclusive of those who often use crude or sexual language? Does supporting one group of people mean turning away others? I hope not, but I'm not sure. Can we find a balance when we have conflicting behaviors? Sometimes we need to change behavior (eg. tone down or refrain from using bad language), and other times we need to understand when no offense was intended, and try to accept and accommodate cultural differences.
Answering these questions to define our culture is very difficult. It is even harder to put them into written rules. I strongly believe that being inclusive is a mindset first. It is about wanting to be a good person to all other people. Once you have it in your mind that you want to make others feel respected and comfortable around you, you'll find that you'll be looking for ways to do so. The key is to be appreciative of our differences. If you show respect and sincerity and remain open to hearing differing opinions, we will automatically become more aware of how our actions affect people different from ourselves. We'll automatically become more inclusive and more diverse.
By the same token, being appreciative of how we are different also means you should be willing to give the benefit of the doubt in case you are offended. It's only through fostering an environment where it is safe to make mistakes and learn from each other that we can achieve diversity and inclusiveness in our community.
Last but not least, it also presents a tremendous opportunity to learn about new cultures. I hope to learn from people who are different than me and talk honestly about our differences. If you are one of these people, I hope to ask you questions respectfully to learn more about how your values differ, and would love to find out how you want to be treated.
I'll continue to think about how to best foster a culture of inclusivity and diversity, but I wanted to stop and listen first ...
It should be no news that PayPal have made an habit of opposing to projects that fight for the respect of freedom and democracy by cutting their funds. Anyway, they have just provided us another example of such an abuse, against the ProtonMail project.
ProtonMail is a secure email service project, similar to the defunct Lavabit service, with characteristics that should allow it a greater resistance to external pressure: it is based in Switzerland (which has specific privacy laws and with a strong democratic control) and developed by CERN and MIT researchers.
Well, it seems that this project was not appreciated by some organization, for which PayPal is just a puppet. Long story short, PayPal cut ProtonMail's funds without prior warning nor real explanation. When pressed to explain themselves, they eventually asked them if their email encryption project was approved by the government (which one, by the way?)!
As I said in introduction, this is not really a surprise, but it remind us that PayPal's major position is a threat to freedom and democracy as they still behave as enemies of these values (or as collaborator to known harmful organization, which is close enough) and that no project should rely on them. Fortunately, ProtonMail does not.,
This project was developed from scratch by Faichi Solutions Pvt. Ltd.
The idea of building a social network for senior citizens was conceptualized by our client, Zlife Systems Pvt. Ltd, and supported by one of the well-known construction groups of India, Paranjape Schemes Constructions Ltd. In India alone, there are currently 98 million people who are aged 60+, and that number is expected to rise to around 173 million by 2026, or 12.6% of the Indian population. With these numbers in mind, our client wanted to build a dedicated social networking platform that focuses on the holistic living needs of senior citizens.
Together with our client, we chose Drupal 7.23 as the open source technology to successfully build Sentizens.com.
• Drupal Commons 3 for prebuilt applications
• Drupal modules like Panels Ajax tabs to show events
• Drupal modules Memcache & XHPr and increased RAM to handle more requests
• Developed & contributed new Drupal modules for customized features.
We partnered with our client from conceptualization to deployment. We are currently scaling up the business model through phase wise development, ongoing support & Mobile App conceptualization.Key modules/theme/distribution used: Drupal CommonsAdvance ClockPanels Ajax TabsMemcache API and IntegrationXHProfAddress FieldStatuses (FBSS) to FacebookViewsRulesFeaturesRackspace CloudOrganizations involved: Faichi Solutions Pvt LtdTeam members: ravygKalyaniKrenukak
One recent feature addition is the "debmake -k" command which audits debian/copyright contents against the latest source. If, for example, the upstream changed the license from GPL-2.0+ to 3,0+, this command will tell you this change. (In the debian/copyright, the more specific entry should be listed after the generic entry since parser uses the last definition as the valid one.)
I admit that this package had some regressions in some previous versions. It is now a stable tool to help making multiarch aware Debian packages of any types. If you had negative experiences, please try this again.
Let me quote from its documentation for the features. (Also available in the package.)
The debmake command is intended to replace functions offered historically by deb-make and dh_make commands. Its features include:
- use of dh syntax under the new debhelper (> 9.0) package
- extensive check of copyright for DEP-5 (debian/copyright)
- substvar supports for binary packages (debian/control)
- support of compiler hardening options (debian/rules)
- keep pre-existing Debian package configuration files untouched
- automatic generation of the missing template packaging files
- easy verification of the debian/copyright file against the current source. (-k option)
- easy packaging command line UI supporting
- non-stop execution with clean results
- direct operation on the tarball archive
- direct operation on the source tree from VCS
- the multiarch Debian package
- the multi binary Debian package
- the non-native Debian packages from the VCS snapshot
- seamless work with debuild, pdebuild, etc.
With the entity API maturing in Drupal 8 as it approaches its first beta, Commerce Guys gathered a variety of Drupal Commerce contributors and maintainers in its Paris office to begin active development on Drupal Commerce 2.x. The week long sprint began with architectural debate and validation incorporating the collective experience of our professional services teams and delivery partners.
Drupal Commerce 2.x will ultimately be a complete rewrite, reflecting the drastic changes in Drupal 8 itself. We’re excited to announce that long-time community contributor and Commerce Guy par excellence Bojan Zivanovic has been added as a co-maintainer to help us make it happen.
Migrating content from one platform to another saves lots of time from doing grunt work and gets data moved fast. However, simply moving the content doesn’t mean the job is done. There are other considerations too, such as 301 redirects for example. Since we are moving content, our aliases are likely changing too. We can create 301s while migrating content in all at once.
One of the most common questions we get from new Drupal users is, "Which modules do people normally use?"
That's a big question, with over 20,000 modules, but some are far more popular than others.
Webchick, one of the Drupal core developers, has used the statistics available on Drupal.org to make a list of the most popular Drupal 7 modules. This is different from the public stats on Drupal.org module pages which show the popularity of modules across all versions.
Here's an introduction to the 20 most popular Drupal 7 modules:
There is a lot of excitement in the Drupal community about Behat, especially from more advanced teams that are investing in their Devops infrastructure. It now even looks like Behat might some day make it into Drupal core. I guess that is why several Web development teams that use BDD (Behavior-Driven Development) have asked me how WalkHub relates to Behat. I’ve written a longer post on the WalkHub blog that explains how it could be done, and what the benefits would be. In this post I will focus on how WalkHub could help the community complete the creation of Behat tests for all of Drupal core and contrib.
Folks from Collabora and Red Hat have been working on making Firefox on Gtk+ 3 a thing. See Emilio’s blog post for some recent update. But getting Firefox to build and run locally is unfortunately not the whole story.
I’ve been working on getting Gtk+ 3 Firefox builds going on Mozilla build infrastructure, and I’m proud to announce today that those builds are now going through Mozilla continuous integration on a project branch: Elm, and receive the same automated testing as mozilla-central.
And when I said getting Firefox to build and run was unfortunately not the whole story, I meant it: if you click on the Elm link above, you’ll notice that there’s a lot of orange, when it should be all green.
So, yes, Firefox on Gtk+ 3 is a thing, and it now has continuous integration. But there’s still a whole bunch of things to fix. So if you’re interested in making those builds work better, you can hop in, there are many things you can do:
- check the Gtk+ 3 tracking bug and its dependencies for a list of known issues or improvements to be made.
- download one of the builds from the elm branch, test it, and file bugs if you find some that aren’t currently tracked. There aren’t nightlies, but you can get the latest builds for 32-bits and 64-bits systems.
- and if you have level 1 commit access, you can test patches on the Try server, provided you pull from the elm branch or apply this patch on top of the tree you push there.
Community Tools Team is working on new layout for user profiles on Drupal.org. The first iteration of mockups is now open for community feedback.Previous deployments
We deployed lots of things on Drupal.org in the previous few weeks. Here is a list of most significant deployments:
- Change "Report security issue" to "Report security vulnerability"
- Update codefilter module
- %20 in image file names triggers the "local images only" filter
- LICENSE.txt has executable bit set (mode 755)
- Regression: updating an issue no longer redirects to your new comment
- Pages matching the URL /profile/.* disabled
- Issues feed for user is broken
- Manage e-mail notifications: Add option to not email the person who is making the update
- New issue comment/edit form should not be available when comments are closed for the issue
- project/user/(name) should be in user's section
- New URL aliases for user profiles breaks drupalorg_crosssite user tabs
- Tracker page doesn't order results properly
- /project/issue/search returns results on two-character results
- List of maintainers on a project page should display Drupal usernames instead of git usernames
- Wrong page title 'Drupal.org | Community plumbing'
- Project issue link filter doesn't handle 'pre' or 'code' with newlines
- Related Issues with HTML cannot be added
- lacking bottom margin under issue listing description
- Create a variable for regex in updating stats on project usage
- Floats in Planet Drupal feed-items are not cleared
- add ' autocapitalization="none" ' to the "name" field on the login form
- Convert .info file rewriting in packaging plugins to deal with D8 .info.yml files
- Fix up video on drupal-7.0 landing page
- Update broken link in notification for 'Not a Spammer'
- Titles for empty fields appear on new organization nodes
- Wrong page when project maintainer hasn't set git username
- Drupal.org search (solr) fails an enormous number of simple searches
- Account url alias lead to Forbidden
- "Log in to search issues" should be a link
- Style system message comments
- Userprofile redirecting to wrong profile
- Create 'supporters' section on Drupal.org
- Your Issues block (on d.o. dashboard) does not list postponed issues
We are working to improve many pieces of Drupal.org. Over the last month we have made improvements to our development environments with continued migrations to our OpenStack cluster, upgrades to CentOS 6, and increased disk speed and capacity.
Additional features on our CDN account also enabled us to shift project usage data gathering from our local Varnish logs to CDN logs. This let us push nearly 7TB of traffic a month off of our servers and network off to our CDN, freeing up resources for Drupal.org and Git.
We have been making good progress on migrating Git from a single node to a highly available pair of servers for improved redundancy, reliability and performance.
Monitoring improvements are being added as time allows, and we will be rolling out a new monitoring server with Icinga and Cacti.
We kicked off Drupal.org user research with a full-day workshop at DrupalCon Austin. You can find our summary and some outcomes of the workshop in this blog post. Right now we are busy conducting remote interviews with Drupal.org users all over the world. Expect more updates from the team in the next couple of weeks.Drupal Jobs
Drupal Job is coming soon. We have just a couple more features to be launch ready. (In particular, we are figuring out coupon codes and adding some finishing polish.) We hope to launch around mid-July.DrupaCon Austin
Thank you to those who joined us in Austin for sprints related to Drupal.org. We were able to make some progress on many of the issues that led to the flood of deployments over the past couple of weeks.
Thanks also to those that took the time to be interviewed by the user research team led by Whitney Hess. You gave us a ton of useful information to incorporate into the personas we are developing for our redesign efforts. There were several intriguing feature requests that came out of those interviews as well.
As always, we’d like to say thanks to all volunteers who are working with us and to the Drupal Association Supporting Partners and Technology Supporters, who made it possible for us to work on these projects. The Supporting Partner Program crowd sources funds that pay for the development team’s time and Drupal.org hosting costs.
Cross-posting from g.d.o/drupalorgPersonal blog tags: week notes
Review: Lockstep, by Karl SchroederPublisher: Tor Copyright: March 2014 ISBN: 0-7653-3726-6 Format: Hardcover Pages: 351
Toby McGonigal's family fled an Earth dominated by trillionaries and vicious class conflict, and attempt, instead, a very risky and precarious settlement on a trans-Neptunian object. It's some of the only unclaimed but marginally habitable space left in the solar system, but to secure their claim requires constant bureaucratic hoop-jumping. That's what sent Toby on a solo mission to a distant moon of their home to claim it and solidify their title. But, while in cold sleep, his craft hits a small chunk of rock, and he wakes up near another world: cold, silent, dead... but apparently with lifeless cities. Another trip through suspended animation in a desperate attempt to conserve resources against the distant hope of rescue has him awakening in a society both utterly foreign and yet strangely familiar.
Schroeder is one of the better big idea writers in science fiction, but I found Lockstep to be a mixed bag. He does a surprisingly good job with the core conceit of the novel (more on that in a moment), even though it's a tricky one to make believable. Surrounding that, though, are a lot of less convincing bits that I kept having to not think about too hard, such as Toby crossing the path of another trans-Neptunian object after the accident (space is really, really big and really, really empty), or the implications of later revelations about the time scales involved in parts of the plot. Some parts of the world building, even if scientifically plausible, struck me as sloppy; for example, a religion plays a prominent role in the plot, but the nature of that religion was not particularly believable, nor was its interaction with the plot climax. I won't go into details about the religion, since it's a major plot point, but the short version is that religions tend to mature from the concrete to the abstract, not the other way around.
That said, the core conceit is both surprising and considerably better-defended in the book than I thought it could be. The world into which Toby awakes is the world of the locksteps: a society that uses suspended animation in a universal and coordinated way to build a functional society on the far outskirts of the solar system. Humans emerge for some short period of time, like a month, and build, trade, interact, and consume. They welcome ships traveling from other trans-Neptunian worlds and prepare for their own journeys. And then they go into suspended animation for an extended period — 15 years and 30 years are common choices — while robots slowly gather more resources and energy, and repair and replace what's consumed in the month of active life. Ships travel with passengers in suspended animation, allowing the vast distances between these cold worlds to be reached during the sleep period. And, since all members of the lockstep sleep and wake on the same schedule, there is no wrenching desynchronization with the surrounding society during travel. One may spend thirty years in transit, but no time passes for anyone else in the lockstep while you're traveling either. A world can effectively trade with all other worlds within a thirty year travel radius without noticing the elapsed time.
This is a technological system that at first doesn't sound like it would work, but Schroeder does a great job defending it and chasing down implications. The lockstep civilization serves as a sort of anchor and time capsule separate from the more frantic pace of the so-called fast worlds. The trans-Neptunian lockstep worlds are remote enough and poor enough to not attract too much unwanted attention, and are thus tolerated by fast societies that may have more available resources. (Although, to be sure, automated robot defenses have to carry a lot of weight here given how helpless the locksteps are during a sleep cycle.) I'm not sure I completely bought the sociology, but it works well enough to carry the weight of the story, and I've never seen a science fiction construction that uses the common technology of suspended animation in quite this way before. Schroeder sets up some nice stabilizing tensions between resources and time, adds some believable political reasons for this fragile society to survive, and uses some of its obvious political vulnerabilities as story drivers.
The plot, unfortunately, isn't as good as the big idea, and particularly suffers at the start of the book. Toby is a teenager without much experience (Lockstep is marketed as young adult), and is immediately thrown into a strange and quickly hostile environment. This means that he spends the first half of the book reacting to a blizzard of new information, and the plot tends to revert to a tour of Schroeder's constructed world. Toby is also a bit of a cipher and a bit of an everyman, without many feelings or opinions beyond the obvious feelings that any teenage boy would go through in this situation. That makes the sense of a world tour even stronger.
This flaw does not persist through the whole book. Toby does eventually start making decisions and doing things, some of the supporting characters add additional depth, and I found the unwinding of the plot surprisingly satisfying. The nature of time in this world lets Schroeder have both epic sweep and personal connection at the same time, which lets him pull off some neat contrasts between the personal and the political. I also liked Toby's gradual piecing together of what actually happened while he was asleep, both in the construction of society as a whole and in the personal conflicts between people he knew well. Some of the ease of grand manipulation seemed dubious to me, but, in Schroeder's defense, people do develop a reverence for and stories about things that have lasted a very long time, and Schroeder's setup gives him quite a lot to work with in that department.
So, a mixed bag. The core concept is thought-provoking and up to Schroeder's usual standards. The surrounding world-building isn't as much, and I think Schroeder reaches for some too-easy explanations and still underplays just how many disruptive things can happen over the span of time that this book covers. The characterization I found weak and unsatisfying for much of the book, but it gets moderately better in the end. There's a bit too much tour, and a bit too much world exploration instead of plot, but it's a fascinating world and I still enjoyed the tour.
With stronger characters and a few fewer dubious supporting pillars in the world background, I think this would have been an excellent book. As is, it's an enjoyable novel set firmly in the big idea and deep future end of science fiction, and I'm always happy to see more stories like that. It's not the best that Schroeder has done, but I still recommend it.
Rating: 7 out of 10