Tag Archives: drupal

Joomla Thoughts


Add to iTunes | Add to YouTube | Add to Google | RSS Feed

Someone asked recently what I think about Joomla. It’s a great framework and platform to build websites on top of. It’s still largely unfriendly, though. I know there are tons of modules, but it’s just so user UNfriendly.

Some people would be intent on comparing Joomla with something like WordPress. WP is a great blogging platform at this time, and it’s working on being for more than just blogging. Joomla is better being compared to Drupal. If I had to choose between Drupal and Joomla, I’d go with Joomla any day of the week.

I’ve yet to find a framework out there in open source land that is user friendly. I say that the reason that this is is due to developers getting ahold of things. Usability is usually the last thing on a developer’s mind. That’s how we end up with these unweildy experiences.

Joomla fans will gripe at me to just learn it. However, if I look at something and feel as though I might screw it up, I tend not to touch it. If a program or framework is steeped in a usability nightmare, I want nothing to do with it.

Want to embed this video on your own site, blog, or forum? Use this code or download the video:

Open Source vs Closed Source


Add to iTunes | Add to YouTube | Add to Google | RSS Feed

Justin called from southern California recently to talk about open source projects. He’s doing some research into this for school, and had a few questions. Justin asked my opinion as to the pros and cons of both open source and closed source applications, along with positives and negatives of each. My opinions are not definitive, of course. As a user, I can appreciate either platform. It’s ultimately about what the software has to offer.

From a code perspective, there are some developers who want complete control over their code. They want to control development, and don’t want any input from others. They know every line of code inside and out, and live and breathe their creation alone.

Open source is more like one person sketching out an idea and then collaborating with others in order to come up with better iterations. If something in the closed source realm changes (or something happens to the original developer), you end up with a product that is dead for all intents and purposes.

Software is living. It’s omnipresent. You’re only as good as your latest version. Software is in a perpetual state of evolution. There are merits on both sides of this particular debate.

I’m a big fan of WordPress, and I’m always on the lookout for coding rockstars. I think there is so much more I could be doing if I had good designers and developers at my disposal.

What are YOUR thoughts? Are you a proponent of an open source ecosystem – or a closed one?

Want to embed this video on your own site, blog, or forum? Use this code or download the video:

How to Build Your Community Using Open Atrium


Add to iTunes | Add to YouTube | Add to Google | RSS Feed

Gregory Heller was an attendee at Gnomedex this past summer. During our open mic session, he talked to us about the Open Atrium service, which is a free (and apparently better!) alternative to Drupal. It comes with six features – a blog, a wiki, a calendar, a to do list, a shoutbox, and a dashboard to manage it all. Open Atrium is completely customizable. If you want a feature that’s not on that list, you can add it yourself.

The fun really starts when people start sharing the features they build for their own Open Atrium with everyone else. Then everyone doesn’t just have access to six features, but also a bunch of others that are easy to plugin to the basic package. Open Atrium is built on Drupal. This makes it easy to add other Drupal modules to the package and to build new features for it.

If you’ve ever tried to build something with Drupal, I’m willing to bet you got frustrated in a hurry. Open Atrium is so simple to use out of the box that you won’t have to worry about whether you’re getting it right anymore. It just… works.

Want to embed this video on your own site, blog, or forum? Use this code or download the video:

Google Docs has a Community?!?!

Add to iTunes | Add to YouTube | Add to Google | RSS Feed

If you got an email from someone alledging to be on the “Google Docs Team”… would you believe it? I didn’t, because they were asking if I would like to post to the Google Docs blog to help other users. True enough… Google Docs is knocking on my Virtual door. Now they’ve started a YouTube channel.

I’m about to use Google Docs to engage the community. A few weeks ago, I announced my intention in developing an open-source platform where you can create your own little community, based on Drupal. At that point, it didn’t really have a name. Mike Arrington from TechCrunch ribbed me into finding a name. So… I went went Gnomepal. That’s kind of a little mix of my username, and the word Drupal. This will basically be a “community in a box”. This will be for non-technical people who want to create a community online. It’s not a blog or a forum… those are tools. It’s things like these all combined into one tidy little package.

As we’re assembling these resources, there is a list of questions we’re asking you to fill out in order to get your feedback on this project. These questions are based in an open Google Spreadsheet. The list of questions is for both community leaders… and members.

  • What do you want in a community site?
  • What are your top 5 most important components / tools / features of a community site?
  • What pieces “must” be in place for Gnomepal’s first milestone in order for you to start using it to build a community?
  • Are there any parts that, if they weren’t available, would keep you from using Gnomepal for your community needs?
  • What frustrates you about your current community site(s)?
  • What do you love about your current community site(s)?
  • What tool(s) do you currently use to organize your community?
  • Is limited customization (color, logos, etc.) important to you?
  • Do you want to be able to narrow your feature set down to only a few, or to have the whole range of features always available?
  • How long would you be willing to spend updating your site (its content) each week?
  • Is it important that you be able to generate revenue with your site?
  • Is sharing revenue with your community members important?
  • Do your members pay dues or make donations to the community?
  • How active is your community? In what way?
  • How likely are you to set up a new community site within the next month? Six months? Year?
  • If you build a new community site on Gnomepal, would you allow all of your members to contribute promoted content, only a few members, or only yourself?
  • Would your site be private, or open to the general public?
  • Do you anticipate your community would need live (video or audio) content, or possibly event coordination tools?
  • Would you host the community site software on your own server, or would you prefer a tiered hosted solution?
  • How important is it to you that you be able to view detailed stats about your community site? (very, somewhat, not at all)

You can find all of the information about Gnomepal on the site. The way we’re building it is with total modularity and flexibility. This way, you can add only the components you want or need. We want to set up a hosted service, so that you can just answer a few questions with clicks of the mouse and BAM! Your community is set up. Instead of us saying “you have to use these services”… we’ll have it set up to be customized to your needs. You’ll be able to build your community on your terms. It doesn’t get any better than that!

[rsslist:http://shop.tagjag.com/products/drupal]

Want to embed this video on your own site, blog, or forum? Use this code or download the video:

The Open Source Community Project Named Gnomepal

The last few days have been a whirlwind of backchannel (and front-facing) activity surrounding my call-to-action. 95% of the feedback has been positive AND productive, with some of my favorite responses coming from people who had working code to donate – and a nod from Dries on one of Adam’s follow-up posts.

It was most heartening to see that Hans pretty much echoed our same concerns and directives – which means we’re definitely scooting down the right path.

In about an hour, we’ll officially be starting down the path of live dogfooding the project that is now known as Gnomepal. This means, we will be building out our needs as a community for this particular community project. Like anything, we have to start somewhere – and Gnomepal.org is it. If you’d like to join the discussion list, we have one set up.

We are planning to be active in #drupal-gnomepal on irc.freenode.net, and anybody can download the living code on the Assembla page (which contains a wiki that needs fleshing out, Trac, svn, trouble tickets, Milestones, etc.). If you would like to join the effort in development, documentation, organization, etc. – just let us know (and I could certainly use some help in wrangling folks). I’m working on getting a mailman list set up on my server, but for some reason it hasn’t been cooperating with us lately.

That’s all for now. I need some coffee to wake up. You?

We're Taking an Open Direction with Web Communities: Are You In?

Add to iTunes | Add to YouTube | Add to Google | RSS Feed

For the community of community owners, operators, moderators, and members: we need better options, and I believe we need them to exist on open platforms. We all have different tastes and we all use different tools, but I think we all can accept that community software should help us grow and flourish. One potential platform for us is found in Drupal, an open source content management system (CMS) that can be molded into a powerful, integrated suite of community experiences – something that can help us make sense of all these social networks we belong to.

For the geeks: Drupal has so much power in its core, and enough fantastic community-contributed modules, that I think it’s time to assemble an Install Profile, complete with beautiful (accessible, microformat’ed, high quality) themes, pre-set Views for any Web community to either install on their own or have hosted at any given Web host that supports Drupal with optimizations. The benefits to you should be more than obvious.

And I don’t mean just the framework for the community platform, I mean… like, it’s ready to go. “It’s not the features, it’s the implementation.” This all started when we began to migrate the existing Lockergnome community to Drupal (5.x, as 6.x had not yet been released and many favorite modules have not yet been brought up to speed). OpenSocial, OpenID, OAuth… just there.

I’m posting this because it’s my hope that I can find partnerships, angels, brain-power, etc. – either from other communities or businesses willing to take part in an open source project that could benefit everybody and themselves at the same time.

My idea is not a unique one, and therein lies its greatest potential.

I don’t want a social network, I want a socially *RELEVANT* network (both on-site and beyond). I don’t want a community platform, I want a participation platform where members are rewarded and ranked appropriately. I don’t want a place where people can just blog, because I’m going well beyond the blog. It’s not just about hosting videos, audio files, or any piece of random media – it’s the discovery mechanisms between them that make them more relevant.

It’s discovery – no matter the community, no matter the type of content. Imagine coming to a site and not just reading about what other people are interested in, but what interests they SHARE with you! Imagine coming to a site and seeing how someone ranks in answers pertaining to your own questions! Oh, I’m confident you may have seen these features elsewhere – but what about for your own site, what about for your own community, what about for your own ideas?

Imagine that, instead of being taken to a “404 Page Not Found” error, seeing a list of potential results – or simply being redirected to the likeliest result if there’s only one in the search index? It’s already possible, but only if the developer makes it possible – or the project leader suggests it as a feature that enhances the user’s experience when things aren’t optimal.

SEO’ed URLs, nimble templates that adhere to a guideline for communities (colors and layout), identity flow, rating, voting, posting, gathering, embedding… a structure that supports both ad hoc and category-driven content… something that is centered on the user instead of the community s/he is involved in. On one type of page, you’d see related links to all the other sections and people throughout the site. To do as much as possible to de-geekify administration so that it’s not so overwhelming to people who just want to have a powerful tool (without needing to be a power user).

It’s not about user-generated content, it’s about their direct and indirect involvement. It’s not about locking them in, it’s about freeing them and giving them tools that they can use or further mold for their own specific needs.

I’m not a startup – I’ve been in business for 11 years, creating my own content, helping create content for other people, and helping people create content for themselves. I’m a community and marketing consultant, and I know full well that my clients could make use of the specific interplay of the modules I’m wanting to bring together.

That’s probably one of the most maddening issues I’m facing: great software that’s only accessible if you go through the company that built it, or if you go through a consultancy that has customized it to resell to high-paying clients. But, here’s the thing: those same people could use some of the things that I want to do with the platform. We all have to put food on our tables, I know – but maybe with enough wisdom and work, we can accomplish something together (helping ourselves and the world beyond our own walls).

When hovering over an avatar, one should see relevant information about that person (name, age of account, recent content, similarities, syndication, etc.). And where’s the intelligent relevance when I happen to be visiting someone’s profile page? Are they like me? Have they visited my blog before? Have they commented on something I’ve done before?

Why can’t a user see more rich statistics about his / her contributions throughout the network? Why can’t someone know where people are coming from, and use that generic intelligence to further foster relationships with others?

The front page of the site should be a rich mix of photos, text, video, tags, a call-to-action, and other relevant information. But what if the community wants to grow organically rather than through pre-set categories or forums? Let each tag page be a “front page” all its own, mirroring the same kind of data that’s related to the tag. Recent blog posts, latest comments, most commented over various periods of time, highest trafficked blogs / questions / groups, related tags, images / audio / video, popular people, newest people… and a user’s profile page could be a compilation of similar data (their own newspaper, if you will).

Of course, if a community or group wants to have predefined categories, they could easily be applied – choosing to elevate the content of certain roles over others. The creation of a subdomain could happen quickly should the community wish to create a group with tools targeted to them – their own wiki, their own forum(s), their own whatever.

When a photo can’t be found for a story, why not dive into properly CC licensed photos from Zooomr or Flickr (and attribute them accordingly) – especially if it was uploaded by the user who created the content that’s tagged with a similar keyword? Let the system help them automatically match all of their content created on disparate sites! Give people an incentive to make external data ecosystems much more complete – your photo on Flickr and your video on YouTube tagged with the same keyword would automatically get sucked into your post if so desired.

Why leave it to the user to figure this stuff out? And if you (reading this) ARE the user, isn’t this something that you’d love to see in all of your various Web communities?

When I’m viewing someone’s lifestream, and I happen to see that they listened to a song on Last.fm, why can’t I click a permalink and find out other people in the network who have also listened to that song – and see which ones I share interests / tags / etc. with?

Why don’t I have the options to set the colors site-wide, or per content type? Why don’t user avatars indicate my relationship with them at a glance (either with a tiny corner color or border change)? Why do I have to load a completely separate page to launch a contact form, to sign up, to sign in? Why aren’t my notification mails filled with more information? Why can’t I… make this relevant?

Monetization can and should go beyond Google AdSense sharing – to any other affiliate network (Amazon, ShoppingAds, Kontera, etc.), or to a dedicated ad network all our own – perhaps through Google Ad Manager since they have a backfill of inventory at their disposal. OpenX, too – the flexibility to swap, built into the theme (dunno, maybe at some point it’ll flow easily within the CMS itself).

For accounting scalability, the member must provide their own account IDs. Essentially, the member receives x% of the impressions that come to any page s/he has created 100% of the content for – potentially adjustable after meeting certain criteria (points, etc.). Imagine leaving a comment in someone’s blog, answering their question, etc. and when that comment exists on a separate page on the system, the person who contributed the comment having a percentage of the ad inventory? No longer are they relegated to living in their own blog, but feeling like they’re getting something back by participating in the network and providing value. All with restrictions and relationships controlling the mechanisms.

And if a community doesn’t want to be monetized, fine – they can turn that feature off. If they don’t want to share ad revenue with their members, fine – they can turn that feature off. At least they’ll have the option!

What’s more, shouldn’t there be a shared license for all content contributed to the community – and the user may define his or her own CC terms for it? It’s such a grey area right now, and I don’t know how that looks in a legal sense. I’m hoping to add all the necessary components that a community site might need before it goes live, so that it’s quite clear what’s going on – let the community leader set ‘er up how they see fit, but at least integrate a wizard to generate a base structure for the legalese.

The bottom line is freedom and flexibility – the freedom to choose, the freedom to grow, the freedom to leave (and take your profile data with you, or easily transfer it to another system). The flexibility to add features that pivot around the user or groups of users – whatever new tool may come along.

I’m not quite a newspaper or a magazine (or a company that owns several of them), but what I’m wanting to create could certainly be used for traditional press outlets. On the Web, you’re a television studio, a radio station, a newspaper, a magazine… you’re a publisher with a vibrant community, where editorial and viewer interaction can intermingle.

We’ll need information architects, developers, designers, quality assurance, copywriting, leaders, and other roles crucial for the initial and ongoing guidance and assistance. I don’t care to fork Drupal (that’s not what this is about) – having recently donated funds to send a couple of developers to Drupalcon, the last thing I want to do is split efforts. It’s great to have a moldable piece of clay, but even better when that clay has been molded into a beautiful statue for all to admire. Drupal is a modular CMS, so anything done within its framework can be deployed to any other Drupal-run site (community-oriented or not).

Adam Kalsey has been assembling the project and helping put many of my suggestions together – but I realized quickly that if we’re going to turn this back over to the community-at-large anyway, it’d make massive sense to let ’em in on sooner rather than later.

I love brainstorming, but I love seeing ideas come to fruition even more. I do plan on live streaming as many of the efforts as allowed, if only for the greater part of the Drupal community (or “community development” community in general). I see a few things that Drupal.org could use, itself… if only to attract other people to the platform, not just those who use it now. Not trying to step on any toes, just suggesting that if the tools are up to scratch, they should be shared and deployed as living examples of what’s possible.

I have to take action on something, and right now from everything I’ve seen in “the community,” I’ve gotta go with the platform that’s most nimble and hands-on as possible. It’s going to take a good amount of tweaking to get to the point where I’d say it was ready to be “packaged up” and passed out to any other Web community that wanted to use it.

If you’re familiar with svn, can communicate well, can work well with others remotely, need something like this for your own needs (and can’t or don’t have the time or resources to do it alone), wanting to build your resume, understand community / social media, and are hip to doing something with the rest of us… then stay tuned. If you’re someone who has financial resources to contribute so that we can do this more effectively, I’m all ears – as this could give you a tool to use for your own communities as well as be seen as a “good will” gesture. No VC funds, please?

We’re already set up on Assembla, and have just released the Activity Stream for any compatible Drupal site. If the Drupal community moves quickly, they can populate the default list to the most comprehensive social networking outline on the Internet. The FriendFeed API suddenly got a bit more interesting for you, I bet.

Bottom line is: we’re VERY serious about putting this together. We’ve been at it for quite a while.

This weekend, I’ve invited a very small group of people over to my home to “sprint” on this – a project that can still be molded, a project that can still be grown, a project that could help make someone else’s project better. Some of those sprinters may opt to work remotely, and I will start to scout for a public space for the next sprint. If you know of someone in the Seattle area that might be up for something between 9am on Saturday through to Sunday evening, let me know. I can only accommodate so many people in my home (sorry, I don’t have a “real” place to gather), so I’d just as soon it be through a trusted network for in-person interaction.

It’s taken on an official name, and that’s “Gnomepal” – as inspired by TechCrunch’s Mike Arrington. It’s a mashup between my ol’ nickname and the platform of choice for this particular project… I guess it’s fitting? We’re going to be using Gnomepal.org for live dogfooding, so every time you load ‘er up – you’re going to see something different. Expect falling rocks for a while. 🙂

I have Lockergnome.org, Lockergnome.net, and Lockergnome.com – and each may play a role in all of this. If I were to map it out right now, I’d say that “.com” would become an active deployment of the latest working version of the install profile. I’d relegate “.net” for hosted communities and custom domains. I’d use “.org” for the non-profit arm of this thing. Of course, everything is subject to change – that’s the nature of software and development.

We already have an IRC room open at irc.freenode.net in #gnomepal (just for a regular flow of backchannel chatting). This is a massive undertaking, I understand – but I see such an overwhelming need for it (personally and professionally). There’s a lot of variables at play, and many chances of losing the user in this experience – and I’m trying to bring everybody closer. This is a world full of great software, great people, great experiences, great platforms. We have to imagine big, because that’s the only way we’ll be able to achieve big – but it’s not big enough if it’s not open.

Thoughts? My email is [email protected] – and I’ll be at the Drupal Co-work on Thursday (and sprinting with other folks this weekend – which is sure to be the first of hundreds). Donations will be funneled through a yet-to-be-set-up non-profit (we already have PayPal).

I hope that the discussion in the greater community is fruitful, if nothing else – and I’m also hoping that holy wars don’t break out over which platform is better, because the best platform is always the one that works well for the person or company that uses it. For my personal blog, I’m quite happy with WordPress (can’t wait for v2.5 to go final). For my communities, it’s going to be Drupal.

My biggest fear isn’t that people will talk about it – it’s a fear that they won’t.

[rsslist:http://shop.tagjag.com/products/cms]

Want to embed this video on your own site, blog, or forum? Use this code or download the video:

What Advice do you Give to Young Programmers?

Add to iTunes | Add to YouTube | Add to Google | RSS Feed

Programming is an excellent field to go into, and good Programmers are a hot commodity. That reminds me… if anyone out there is above excellent at working with Drupal, shoot me an email to [email protected] Thanks to Grant for sending in this list of tips for young people looking to learn Programming.

  • Read. If you do not like spending a lot of time reading… you should not program. When you are learning a computer language, you must be willing to spend hours reading books, websites, and magazine articles.
  • Take your time finding the language that is right for you. Think about what you want to accomplish when programming a computer. Remember, once you learn one computer language… it is easy to learn another.
  • ThinkWhen you start to make a program, really spend some time thinking about what you want it to do. I cannot tell you how many times I just jumped into a project, only to realize it was useless.
  • Use flow charts. Flow charting allows you to organize your code, and make it efficient.
  • Back everything up! When you start to program, there is a good chance that you might mess something up, and fry your computer. Give yourself a safety net, and back everything up. Also make sure to frequently backup your code itself! This makes it easier to undo when you make a mistake.
  • Comment your code! If you leave a project, only to come back later… you will probably have forgotten how it worked. Commenting your code will help you. With comments, you do not have to read through the whole thing. Instead, you can look at your comments and get an idea of what’s going on.
  • Don’t be afraid to ask for help. Microsoft has a great website and databases for programmers. Also check out their blog, and ask questions. There is always someone who is willing to help.
  • Get a book. Your local or school library will most likely have books on Programming. Check them out, read them over and over, and learn from them.
  • Testing! When you have a good start on your programs, let other people try them out. You could ask people to evaluate them, or you could give them out as freeware. Start a website and let people download them if you want. The feedback will be an invaluable learning tool for you.

[rsslist:http://shop.tagjag.com/products/programming]

Want to embed this video on your own site, blog, or forum? Use this code or download the video:

Drupal vs. WordPress

http://live.pirillo.com/ – Everyone has a blog, but Perseco asks which platform is better: Drupal or WordPress?

Some people think WordPress is good enough, while other people swear by Drupal. If you want one blog with one user, WordPress is good enough, but if you want to run multiple blogs with multiple users, Drupal is the way to go.

Drupal offers a variety of options, but has a steep learning curve:

Drupal is a free software package that allows an individual or a community of users to easily publish, manage and organize a wide variety of content on a website. Tens of thousands of people and organizations have used Drupal to power scores of different web sites, including:

  • Community web portals
  • Discussion sites
  • Corporate web sites
  • Intranet applications
  • Personal web sites or blogs
  • Aficionado sites
  • E-commerce applications
  • Resource directories
  • Social Networking sites

WordPress also offers a large list of features:

WordPress is a state-of-the-art semantic personal publishing platform with a focus on aesthetics, web standards, and usability. What a mouthful. WordPress is both free and priceless at the same time.

More simply, WordPress is what you use when you want to work with your blogging software, not fight it.

PlayPlay