Hello, Dreamwidth! Last week, we attended YAPC, the annual conference put on by the Perl Foundation. We brought a group of our developers so they could both attend the conference and learn things, and also so they could represent Dreamwidth to the wider world. (Which they did! Awesomely!)

The conference itself was full of a number of interesting and varied talks, given by a bunch of incredibly smart people, and we learned a bunch (and found out about all kinds of useful things we can apply to Dreamwidth in the future). Aside from that, though, we had a great week, full of things like midnight hackathons, trips to see the actual servers that run Dreamwidth in person, people being voluntold to do things (that's a combination of "volunteer" and "told" that involves me pointing at someone and telling them "that's a great idea, why don't you do that"), and a whole host of teambuilding and other productive things. We've learned things, taught things, broke things, fixed things, and discovered just how many people you can pack into a hotel room and not want to kill each other later.

We'd like to say "thank you" to everybody who's paid for their accounts lately, since it's your support that allowed us to do this, and it's already paying off in bugfixes, new features, usability improvements, and loads of people who heard about Dreamwidth-the-open-source-project from us and are interested in coming to hack with us. So, let's go over some of the neat stuff we did!

(I also want to apologize in advance for any typos or weirdness in this news post, since I switched recently to dictating instead of typing, since my RSI problems just keep getting worse. Let me tell you, it may be easier than I thought it would be to make the transition, but that does not mean it's easy.)

Conference Report

The biggest thing we managed to get done this week was a great deal of training, since we had a team of fourteen people, ranging from relatively new to Dreamwidth development to having been with us from the start. It was really awesome to have everyone in the same room and able to share information and knowledge, even if it was interspersed with jokes about Chris Evans.

It was really awesome to look up and realize that people had formed little groups to share what they know and work together on patching bugs. We also went to talks, gave some talks of our own (including misskat's first talk at a tech conference, which went over wonderfully), sat around hacking, taught each other some really awesome tips and tricks, and thought of ways we could apply all the neat things we were learning about.

There were a lot of highlights in this trip, but one of the really awesome things was being invited to our server hosting company for a tour of the facility and to see where our servers live. They were incredibly gracious at being invaded by a horde of slightly odd people, but it helps that they were all odd in precisely the same way that we are, which is to say the awesome way. We were all very careful not to trip over any power cords, and we waved at our servers as we passed them.

We weren't allowed to take photos inside the facility itself, but we did get a shot of everybody (minus the ones who had to stay back at the hotel, woe) in front of the building, with bonus guest appearances by dive (who works for the hosting company), cheyinka, and their adorable tiny human:

(You'll note the number of people who are clutching coffee cups as though our lives depended on it. It was a really early start. Half of us only don't have them because we'd already finished ours.)

We'll be hearing slightly more from each of the people who joined us for the conference throughout this post, since like last year, I assigned them homework.

This, meanwhile, was the view from our hotel room balconies:

Both photos are courtesy of my lovely and talented wife, sarah! (Who did an incredible amount of work last week to make sure the ship kept lurching along.)

Development

Friday night's code push included the fixes and features from the following code tours:

Highlights from this batch include replying to comment email allowing you to reply to the comment the email was from (which was mentioned in the last news post, but which received a few bug fixes and tweaks for this release), a number of fixes for display issues in both site skin and journal styles, a bunch of backend fixes to make the site run more efficiently, a number of new themes, a few really big accessibility wins, and a handful of additional fixes for bugs that have been annoying us for a while. (The advantage to having a number of people in the same room working on Dreamwidth is that you can find someone who's willing to adopt that bug that's been annoying you for a really long time.)

There are also two big things, namely:

Icon Renaming

You've been able to rename your icon keywords for a while, in order to change the keyword on an icon without causing all old uses of that icon to revert to your default icon, but if you had icons that have been uploaded without a keyword and had been assigned the automatic "pic###" keyword, those couldn't be renamed.

We're pleased to announce that thanks to the hard work of purplecat, with help from allen, you can now rename those automatically keyworded icons as well. It works the same way as renaming any other icon.

This was a huge project, even though it doesn't look like it should be on the surface -- unlike 'normal' keywords that you supply yourself, the automatically-assigned "pic###" keywords were system-generated and special-cased, and the code treated them differently. purplecat did an amazing amount of work to make this happen -- learning an incredible amount in the process, since she took the bug thinking it'd be simple and easy and only discovered too late that it was more complex than it looked! -- and deserves all the cookies in the world for it.

Several people also reported a bug in which their keywords had been deleted. We've been trying to figure that one out for a while, but allen managed to finally lick it. If you had that problem, which was only happening in certain rare edge case circumstances, you can now rename the automatically assigned keywords back to your own keywords and it won't happen again.

Pretty URLS

Have you ever looked at a link to a Dreamwidth post and wondered which post of yours that was, or been linked to a post in someone else's journal and wondered what you would find there if you clicked it?

Wonder no more. We've released a feature that will allow you to name your posts in the URL, by defining a "slug" -- yes, that is the technical term! It comes from the days of newspapers and typesetting.

You don't have to define a slug for each of your entries -- if you don't add a slug for one entry, it will use the old-style URL, and you can mix old-style URLs and pretty URLs in your journal with abandon. You can only use a given slug once in your journal, even if the entry is posted on a different day. If you give it a slug that you've already used, your entry will still be posted, but it will use the old-style URL and the site will warn you that the slug had already been used.

Check out what it looks like by looking at the URL of this entry!

This project was mark's, based on a suggestion that came through dw_suggestions from skud, and it's a standard feature in many other blogging platforms. I'm really excited to see it on Dreamwidth, even if it does mean I'm going to have to go back and edit a bunch of my old entries to give them pretty URLs. And yes, this is the reason why the codepush was about an hour and a half later than we'd said it was going to be -- he had to finish up the final touches and let us test it.

(mark gets extra credit for doing it, too, since he did not one but two big things this week -- the other thing he did was pulling our support system into the search database so support volunteers can find old requests once they've been closed, which is also a super awesome feature that took a ton of work.)

Tales from the Conference #1

I asked everybody to write up a brief blurb on what they did last week for inclusion in the news post. Like last year, they were very tolerant about being assigned homework. I'll turn over the next section of the post to them:

Whooooosh. That was the sound of a whole week going by with an awesome group of DW folks. Or possibly the sound of a million bats flying out from under a bridge. One unexpectedly crawled across my shoes and then purplecat's as we crowded the railing to watch, but we gave it some breathing room and it flew off across the street to keep hunting bugs. Whew. Hopefully it'll submit its first DW code patch any day now and feel welcomed by our crew of devs and code reviewers.

As for me, of course I found several of the YAPC talks captivating, but I spent much of the week visiting family and wasn't trying to get a lot of coding done. mark has said that DW is really about the people anyway. There are whole areas of Dreamwidth that I just don't worry about because I know there are plenty of talented people working on them already. But when said talented people personally invite me to resolve bugs that they care about, I am grateful and honored. Thanks Dreamwidth!

It was YAPC, and Perl people were everywhere. I got to Austin, which I'd like to complain was sauna-hot but for some reason -- alien invasion, maybe -- so was New England, so Austin was kind of like New England with air conditioning. And then in my hotel there were Dreamwidth People! I would love to tell you that they looked like little aliens and had clusters of tiny elephant legs but ... you know what? Let's just pretend that they did.

Anyway I learned that coding with the Dreamwidth People is, in fact, the funnest. One thing about the code I write (accessibility bugs and features, for the most part) is that it has a direct impact on a very small portion of the user base; for most of our users the only visible impact is that it ends up being easier for your friends who have accessibility needs to read and post. But the Dreamwidth People (maybe because the clusters of tiny elephant legs and their tiny alien arms mean they have to use alien technology) have just as much respect for fixes that will help just a couple of our users as they do for fixes that will help everybody. I got as much help, support, and positive feedback for adding screenreader accessibility to the support request forms as others did for [EXCITING FORTHCOMING FEATURE REDACTED] or [EXCITING OTHER FORTHCOMING FEATURE REDACTED]. What I'm saying is that for tiny, adorable, elephant-legged aliens from the planet Dreamwidth, these folks take the diversity statement seriously.

When we weren't hacking we were attending the conference, and having attended a lot of tech conferences over the years I was expecting that I would get value out of two, maybe three sessions before I burned out hard and had to nap on a registration table. But maybe because Dreamwidthia is kinda energizing in a way that boring old planet Earth isn't, I made it to the final day of the conference before I had to be dragged out by misskat and mark, while sleepily protesting "but I want to see the last round of lightning talks!" between snores.

Lightning talks don't involve actual lightning. This was a surprise and a disappointment.

I went to a great session by Joe McMahon (pemungkah) called "How to Make Your Users Not Want to Murder You, or Software Engineering for the Lazy" which talked about how to document and communicate about API changes. At one point somebody in the audience asked "but if we do it your way we won't be spending all of our time coding," and Joe responded "no. If you are a good developer, you should not be spending 100% of your time coding." It was a great reminder about how much of what we do needs to be supported by communication. D Ruth Bavousett gave a talk called "An Ecological View of a FOSS Community: Koha" about the choices one open source community made to encourage contributions from the user base.

So basically I spent a week learning cool things about programming in between wicked long hackfests with adorable little elephant-legged aliens, where our Glorious Leaders, Captains mark and denise, encouraged us in keeping the systems running and writing our code, and taught us more about git, and fought our imposter syndrome, and made sure we took stretch breaks, and fed us (who knew a vegetarian with food allergies could eat so well in Texas?), and encouraged us some more, and put the code push up on the hotel television so we could all watch it, and stayed up all night with us while we dealt with the fallout from bugs introduced in the code push not that I broke the site for people running really old versions of Firefox or anything hey I fixed it by morning okay?

I think that last item is maybe the most important, because this was nominally a Perl conference, and not everyone who attended knew Perl. Some people focused on styles, some on responsive web design, some on jQuery. I myself spent much of the week reading up on CSS3, and I noticed Mark learning his way around Template Toolkit. But what some of us are best at is directing other people to work on the things that most need working on, helping the rest of us be more productive. That is totally a valid life choice.

When we all work together ("... and my axe!"), we make a really good team, and I'm proud of that.

This week has been amazing. I was able to sit in on some wicked cool talks, and while a lot of the technical details went over my head, I did learn some pretty cool stuff. The best part about the conference was watching Mark and D give their talks: D's RSI talk had everyone waving their hands around, and Mark's talk on diversity was incredibly thoughtful. You should check out the slides on Slideshare if you're interested. Actually, maybe the best part was trading hair braiding and nail painting for patches. Or the best part was finally meeting all these people in meatspace! I've known many of these people for over 4 years now, and it's been fantastic to be able to lean over and chat with them.

Despite being on this project just over a year, I can still horrify senior devs by explaining parts of the codebase to them. The expression on allen's face as I outlined the layers the journal-style system uses was almost worth having to deal with them.

This project is made of wonderful, caring people, as I got hideously sick on Thursday (sleep dep + heat + con-crud = a mess), and basically everyone asked if I needed anything, and they said hi to our servers for me while I hid in bed back at the hotel.

Sometimes asking devs for input on things outside their usual area of expertise is remarkably useful (particularly when one of them is a reference librarian).

We saw horses tethered to a tree outside the Target. I am not even making this up.

Watching all the codepush live on the tv was cool in a nerdy way. Particularly live updates on site traffic.

As of this last push, we have no unclaimed/unfiled color themes left, and only one unclaimed/unfiled base theme. AWESOME.

I LOVE EVERYBODY IN THIS BAR.

And I've had one project in the pipeline that went live this last codepush, and one that is in the planning stages and I did a lot of spec-work on at this conference, so, some short stuff about them!

[Editorial edit -- see below!]

The work-in-progress (I won't give an ETA because I'm terrible at meeting deadlines) is an improved search feature for styles. Right now, if you go to Customize, you have three (not well-updated, fairly useless) categories to choose from. So useless that one is actually 'All', which, when we have over thirteen hundred live color themes, means if you're trying to find something that fits your taste, well... good luck? But it will become BETTER. The plan is to replace it with useful categories with things such as colors, high or low contrast, bright layouts vs muted ones, dark-on-light or light-on-dark, and some useful fun categories like 'Seasonal' or 'Nature' too. And you'll be able to search by more than one of these. Want a blue Practicality layout that has high contrast? You will be able to search for it. And a lot of this will be automatic sorting, so that staff don't have to go 'is this red?' over all 1300+ layouts.

Basically, pure awesome. There's a lot of work that needs to be done for it still, but people gave me some GREAT ideas for it at YAPC (tip of the hat to sarah and allen for some thoughts on cool ways to sort the information, and on gathering some of it, and to deborah who told me that 'that thing were you search for a thing by more than one attribute' is properly called 'faceted browsing', which really helps in the research department).

New Entry & Comment Pages

And, the bit from momijizukamori's bit from above that I pulled out to give it a bit more prominence:

The new live one is something most people haven't quite noticed yet, which is actually fully intended. Our comment pages for site-schemed pages were being generated by some very old, very hacky code, which was super-sleek back in 1999, but the 90s were over a decade ago. Geocities is dead. This code (which maybe four people actually understood enough to change) also needed to be dead. It used transparent GIFs to make indentation in the tables for comments. Everyone who has done HTML coding is now crying inside. I'm sorry.

Thankfully, we already had the well-written S2 comment code, which is used to generate journal-schemed comment pages -- the big project was to make what is essentially a journal-schemed comment page, but for the site scheme, that looked as close as we could get it to the original. It's not perfect -- there are some minor things that we couldn't edit to be exactly identical, and there's probably at least one or two bugs that didn't get caught in the seven months we had it in opt-in beta (and if you see those, give a shout). But what you're looking at now is nice, modern code, which is easy to update and change, has fewer security holes, and will actually display as intended even if you turn images off. EXCITING.

Back to me: momijizukamori is too modest to say so, but this was an incredible amount of work. We've had it in beta for a few rounds of testing, and since there were no additional bugs being reported, we took it out of beta with this code push. (And promptly, of course, discovered a few new bugs. It never fails.) You may have noticed a few subtle differences between the old site-skinned entry/comment page and the new one -- hovering over timestamps, for instance, will give you a tooltip with the length of time since an entry was posted, the timestamps now obey your selection on the Customize Journal Style page, and a few other subtle little changes -- that reflect the fact that site-skinned entry/comment pages are now generated by the same engine that journal-skinned entry/comment pages are generated by.

Spam Prevention

One thing people identified after the code push that was a surprise to us: in the old entry/comment pages, due to a bug (and a fairly bad one) that we didn't know about, in certain views anonymous comments were not being cleaned by our HTML cleaner to the same standards as they were on the rest of the site. The HTML cleaner is the routine that strips out dangerous and unwanted HTML before it's displayed to the user. In anonymous comments, links are rewritten to be unclickable and images are rewritten to be placeholders that need to be clicked to display the image.

This is done for a number of reasons, but primarily to lower the incentive for spammers to spam Dreamwidth. Spammers leave links to their websites on other sites in order to improve their search engine results: search engines scour the internet to index pages, and as part of that indexing, tally up the number of times a particular page is linked to and the reliability of the linking page. Spammers are also likely to try to trick people into downloading and installing malware on their computer, or to link to sites that download and install malware automatically when the website is visited.

By making links unclickable, we remove the incentive for spammers to leave those links on Dreamwidth; we target anonymous comments because spambots are more likely to be leaving anonymous comments, as anything that saves them time (such as not having to have a human create an account before programming their bots to leave spam comments on a site) increases the return on their spam.

Patching this bug -- which wasn't deliberate (we didn't know about it) but happened as part of the whole rewrite -- has inconvenienced a few people, for which I apologize! But it's necessary in order to ensure the safety and security of the site for everyone. (And to avoid that annoying thing where the Google searchbot follows links, encounters malware, and places the site on a blocklist so anybody using Chrome or clicking through on search results from Google gets a giant scary warning page about the site being infected with malware -- I've been tearing out my hair wondering how the heck that kept happening, and now I know.)

We've had several and various suggestions that we make this change opt-in or opt-out, or allow people to set their account so that links left in anonymous comments are clickable on an account-by-account basis, but that just isn't possible. The best solution, if you regularly leave anonymous comments or want anonymous comments in journals you read to be clickable, is to install a local browser extension that will do it for you. There are also several mobile browsers that will make bare-word URLs clickable or allow you to install an extension that does so as well. And, of course, links left by logged-in users aren't rewritten.

As a reminder, when you get comment spam in your journal, anonymously or from a logged-in user, be sure to select the "mark as spam" checkbox when you're deleting it -- that puts the comment into our antispam system, so our antispam team can thwack the spammer. If you come across a journal that looks like it might be operated by a spammer, meanwhile -- full of links to the same site, containing a number of commercial-looking keywords, full of barely-coherent entries that exist only to work in linked keywords as often as possible, often with no icon and minimal journal customization -- report it to us by opening a support request in the "Anti-Spam" category.

HTML Cleaner Changes

Also done with this code push: we were forced to make some additional changes to the HTML cleaner to strip some additional attributes from anonymous comments, most critically all uses of tables. This had to be done because some people were using tables to disrupt the display of entry and comment pages, through such methods as forcing font face, font size, or font color changes for the entire page, replace the entire page with shock images, force the contents of entry and comment page to appear entirely offscreen and prevent the reader from scrolling to read the page, and multiple other forms of "page breaking", as well as to deliberately exploit a loophole to allow them to post images anonymously without those images being replaced by a placeholder. All of these tactics were in active use to disrupt the site for others, and were also being used by spammers to display their spam.

This also had the side effect of preventing that workaround for people who were non-maliciously using tables to display images in anonymous comments, but whether it was being done maliciously or non-maliciously, it was still exploiting a loophole. We're sorry for the disruption, but again, we have to take the safety and security of the entire site into account.

People commenting anonymously can still post images using the <img src> tag -- that hasn't changed, although those images will continue to be replaced by image placeholders.

Tales from the Conference #2

I learned a lot about github, taking it from a mysterious set of random commands to a thing that makes sense (though I still need to look up the commands). There were also tinker toys.

I learned a lot of useful bits and pieces about Perl. I particularly enjoyed a presentation about the Method::Signatures module, and an interesting talk on Roles vs. Inheritance which argued both that Roles could avoid the dreaded "diamond of death" and that they represent a better abstraction than inheritance. I now feel I should learn more about the Moose module.

I contra danced, saw the DW server, and stayed up long past my bed time gossiping and hacking.

The best bit was meeting all the other Dreamwidth people, and attending their talks! Given I don't hang out in irc, it was great to getter a better feel for the people behind posts in dw_dev and dw_dev_training, not to forget sarah who was an angel, ferrying us all backwards and forwards, introducing me to root beer and frito pie, and taking us to watch bats. Talking to people who are much more familiar than I with both Perl and the DW code base was incredibly useful. Thanks to this and in particular, to allen, I managed to get a pull request submitted in amongst everything else (even if it did mean making commits from the airport on the way home).

I travelled. Quite a long way -– from London to Austin, Texas (and soon back again). I attended my very first technical conference, attended talks, met new people, learned a lot. mark, denise and misskat gave truly excellent talks. I met some of the people I've been working with over the past eighteen months for the very first time, and was completely unsurprised to find out that every single one of them is incredible. I wrote code! Some of it was good! Some of it needed fixing. Some of it I actually fixed (the rest I'm still working on).

It seems pretty hard to sum up a week's worth of new experiences in a couple of paragraphs. I think the main thing I'll take away from this week is the massive boost to my confidence, both as a developer and as a human being. This week has been amazing, and I'm coming away feeling ready to take on as many coding challenges as I can find the time for! Thank you, Dreamwidth, for bringing me to Austin!

As D's wife, I've often tagged along to tech conferences before to help out with logistics (e.g. run and fetch things for the conference-goers) and to play tourist in the host city, but this is the first time I've ever attended the conference itself.

Even to the non-programmer, many of the talks were interesting, and I was able to follow the logic of how & why the speaker addressed a particular problem and broke it down to be solved (even if I didn't understand the underlying code). And thanks to the other DW folks who are here this week who are so patient and willing to explain, I learned quite a lot about Perl in general, DW's codebase in particular. So I'm leaving enthusiastic about learning more on my own.

It's always amazing to meet IRL some of the people who contribute so much to DW. This was, by far, the best part of this conference. Thanks to everyone who's offered to help me learn more about DW's technical side -- and thanks for being plain awesome to hang around with.

People write software: A big theme for this YAPC -- at least my experience of it -- was the role that people play in software projects. Our mental image of a project is generally one of the product that's produced: a website, a database server, a paint program. However, wrangling people is at least as big a part of a software project as wrangling code. If you don't have a contributor base, your software doesn't grow -- you can neither fix bugs nor add features without someone to do the work. Code is great, and its technical merits are profoundly important, but it is people who write the code.

Helping/not helping: having become inured to interacting with other contributors through the computer, I find it's really easy to forget how much easier it is to help someone with a problem when they are physically located in the same room as you. You have a lot more shared context, you can walk over and see exactly what they're seeing, and it's easy to ask the many little incidental questions one would never take the trouble to bother someone about via IRC or IM. I wrote up some cribnotes on using screen, a Unix tool that lets people share a command-line session, but it didn't see any use during YAPC. Hopefully it will, now that we're all back home.

Being together in the same space also makes it very easy to pester ask people a barrage of questions, spouting everything you can think of the moment it pops into your head. I'm happy to report that I am now front-loaded with knowledge for the upcoming months. =)

Finally, speaking of physical proximity: we took a field trip to visit our servers! The folks at our hosting facility were kind enough to set us up with a brief tour of their data center. I met our new servers, petted them, and told them what good servers they are. In all seriousness, it was a reassuring to meet the people who look after the machines that run the site. They're good folks, and I left feeling like our servers are in good hands.

Presentations: Looking at the conference sessions in retrospect, the first thing that jumped out at me was the uniformly solid level of presenting skills. YAPC hasn't been weak in this area to begin with, but at any conference, you usually encounter a few talks where the speaker's deathly dry delivery combines with your lack of sleep and caffeine to send you dangerously close to an embarassing naptime. There were no such talks amongst the sessions I was in -- not a one -- which speaks very well of the conference's presenters.

Sessions presented by non-DW folks which I particularly got a lot out of: patch's session on how the various pieces of Perl's unicode support fit together; Deb Nicholson's talk on software patents and patent trolling; and SawyerX's talk on asynchronous programming, along with a hilarious lightning talk in which he mercilessly pilloried the venerable CGI.pm module. Finally, garu and hugmeir gave the best internationalization lightning talk in the history of ever -- five minutes of alternating, rapid-fire Spanish and Portuguese that left the majority of the audience completely confounded. I believe that some or all of the conference sessions will be posted here once the video is processed.

The presentations given by the Dreamwidth crew -- denise, mark, and misskat -- all went extremely well. Whenever we present on what some people view as "soft" topics, I'm always worried that nobody except fellow Dreamwidth folks will show up. Thankfully, that didn't turn out to be the case -- indeed, we spoke with a few people who, having heard one of the DW folks present, were very interested in coming on board and contributing. (Huge win!)

Community: lesson learned: if you show up at a conference with with a bunch of nice people who seem very happy with the F/OSS project they dwell in, and if have a few of their number present on how awesome they think the project and community are, surprisingly enough, some of the other folks there become very interested in getting involved too. =)

To a one, the Dreamwidth folks who assembled out in Austin are simply stellar human beings. You can kind of appreciate how awesome someone is by interacting with them online, but meeting them in person for the first time -- well, it's kind of like the difference between seeing the Grand Canyon on television and seeing it in person.

In conclusion: we've built a really, really incredible community here. People outside of it are starting to realize that. I think that this feat is nothing short of amazing.

And finally, allen, who has seen too many 80s movies and perhaps did not take my assignment all that seriously:

We accept the fact that we had to sacrifice a whole week in Texas in order to fix whatever of our coding was wrong. And some of our code did have bugs, but we think that you're wrong to make us write an essay telling you what we learned while we were there.

You can see us as you want to see us. In the simplest of terms. The most convenient list of interests.

But what we found our is that each one of us is an evil coder, and a styles maven, and a support champion, an Imposter Syndrome sufferer, and a Slytherin.

Does that answer your question?

Sincerely yours,The YAPC Club.

Volunteering with Dreamwidth

It's been a while since we've talked about ways that people can contribute to Dreamwidth if they want!

If you know Perl, want to learn Perl, or always wanted to learn to program and never knew where to start: we have a bunch of resources and a lot of people who are very dedicated to teaching! Check out dw_dev and dw_dev_training, the Development page on the wiki, the entire Development category on the wiki, and our Dreamhack service, which are hosted development environments so you don't have to faff around with installing the code on your own (since it takes a lot of time, effort, energy, and resources to install and maintain a Dreamwidth installation, even one that will just be used for development).

If you make color themes or styles, consider submitting them to dreamscapes! There are a few guidelines for new themes and styles, but if your style doesn't meet our guidelines 100%, it's okay: we'd rather you submitted it and let our styles team see if it could be converted to fit our guidelines for system styles than not see it at all.

If you're a technical writer (or want to be!), you can come tackle our FAQs. Work is coordinated in dw_docs, and you can find the to-do list with a Bugzilla query. Start with the Manual of Style.

And finally, if you're an interface designer or a UI specialist, there are tons of pages on the site that could use modernization and usability improvements. dw_design is the (low-volume) community, but we don't currently have a UI team lead -- if that sounds like you, drop me an email.

*

That's it from us for another update! As always, if you're having problems with Dreamwidth, Support can help you; for notices of site problems and downtime, check the Twitter status page; if you've got an idea to make the site better, you can make a suggestion.

We'll see you soon for our next update, which will hopefully be less rampantly tl;dr. (I CAN'T HELP MYSELF.)

no subject

no subject

Mark was like, "I want something user-facing in this push!" and I said "well, I've been staring at this bug for two years and wondering how I'm gonna do it, but I bet it would take you like two hours..."

no subject

We definitely want to do everything we possibly can to make ourselves a less attractive target for spam -- if you don't get on top of it early, you wind up having a bunch of spammers move in (more than we already have, I mean) and you wind up having to react instead of spending that time doing other things. Also, reacting is never as efficient as acting in the first place.

When I rule the universe, spammers will be locked in a safe, and launched into the sun.

no subject

I have mixed feelings about the bug fix. On one hand, you want to stop spammers and their spammy ways, and all the nasty fallout that can occur with it. I can also understand that you might feel your hands are tied or even get defensive over the matter- a bit of that's coming through and it's reasonable. However there's better ways to deal with this issue than a response that comes off like "just get an extension or something, idonno".

I admit, I've got a horse in this race. I'm traveling often, and I have a client who's bedbound, so both of us use either tablets or phones more often these days. In my case what I use is an old android that's stuck in the 2.? os, and phone browsers that don't clog up my limited memory and have extensions are hard to find. Personally I don't think I'm alone in this area of not knowing where to look.

I think a better approach to this is to create a mobile/tablet faq. What browsers are useful, what extensions are useful, and so on. Or if you're worried about it becoming outdated, a post that gets stickied somewhere in the help section so people can reply to it and add new options as they come out. Because let's face it, who knows in the future what phone/tablet-specific issues will come up (or kinda already exist, like the issues with my phone and the icon browser).

no subject

We definitely know it's inconvenient for some people's use cases, but unfortunately we do have to make decisions based on what's best for everyone and for the long-term health and well-being of the entire site. Sometimes that does mean inconveniencing people, especially when the thing that changed is something that shouldn't have worked in the first place. I mean, I know that people got used to it, but if we'd known about that bug we would have fixed it a long time ago.

We do have plans for a better mobile experience -- foxfirefey is working on a better mobile view for the site, and a few people at the conference were interested in coming to hack with us and mobile clients were mentioned as something that they might be interested in doing. We'll see what we can do to make things easier for this particular use case, but ultimately, anonymous comments are what spammers use in order to spam the site for the most part, and that means needing to be more restrictive with them then we are with comments from logged in users.

no subject

Sadly, I've been living with it for most of my adult life, and it's not going to get better. I've been resisting the dictation software for a really long time, because my brain doesn't work like that, but I reached the "unable to grip things reliably" stage a long time ago and for all my fanatic attention to ergonomics, it was well past time to make the switch. I've been pleasantly surprised at how smart it is, usually thirty seconds after being annoyed at how dumb it is. At least I figured out how to make it talk back to me, which has definitely helped!

no subject

denise, every time you write one of these updates I want to go update dreamwidth_haikai. I could write a hundred haiku or 1k+ epic poem about Dreamwidth, and still not come close to exhausting all there is to love about this site, this community, this amazing bunch of employees & volunteers & people making our internet home more homey and sturdy and amazing for all.

no subject

I'm not sure if I can make a comment here, but I'm having issues with a track notification problem. I've been seeing new comments on a post I'm following; but it doesn't show up in my DW inbox or my email inbox. I untracked and re-tracked again in case, but it's still not working. Wondering if it's a bug or glitch or something on my end.

no subject

Hm. That sounds like something more complex than can be diagnosed via comments to a news post; open a support request with a link to the post that you're not getting notifications for and we'll see if we can poke at it a bit. (It will almost certainly take a while, as weird edge cases like that take time to look into and requires somebody with database access, which is like two people.)

....although, actually, if the problem only started in the last few hours, it's because I posted this post. When news posts get posted, the entire notification system backs up for a while while it chews through all the notifications it has to send out.

no subject

That can happen sometimes if the worker that's processing it gets stuck or the worker manager thinks it's timed out when it really hasn't! It generally only happens with news posts (since it's chewing through hundreds of thousands of notifications) -- let us know if it keeps happening, but once or twice isn't really something to be concerned about.

no subject

no subject

People commenting anonymously can still post images using the tag -- that hasn't changed, although those images will continue to be replaced by image placeholders.

If we don't already have it, we should definitely make a custom graphic for the image placeholders. Also, terribly enthusiastic over better themes categorization!

And while I'm at it, I have a question! Is there any insight to why the header of Dreamwidth is processed later in the code (as such things like tables and divs in profiles that are improperly done easily destroy it)? When site-breaking things are mentioned, I can't help but to think of what happens when these tables are imported, and I certainly would hate to see all table functionality removed from profiles, but it feels like a lot of this could be cleared up by having the navigation portion of the site scheme processed earlier in the code, so if the code is broken later, you still have accessibility to the navigation. Any thoughts?

no subject

(I browse a lot with my handy zap images bookmarklet, and it has been such a pain to not be able to see the comment hierarchies all the time! I am just scrolling through now with no images and admiring all the lovely indentations ^__^.)

Also hopefully all the YAPC and AdaCamp talk of late will get me over the hump to finally check out the usability stuff and try to install a Dreamhack....