Show Likes

This section allows you to view all posts where this member received or gave a like to.

1
Development blog / Merry news and happy short delay!
Nao « on December 18th, 2013, 11:30 AM »
Just to keep you posted on the latest news[1], I'll try to keep doing what Arantor used to do at Facebook. So, this is a follow-up to that news post from August 23. With a few differences, which are in line with my way of doing it: while he used to post more regular updates, his changelogs were a bit too exhaustive, and lacked any sorting. I'd rather just mention what really makes the user tick, and that is, the really nice additions to Wedge. If you'd rather have a full list, the New Revs topic is waiting for you, like it's always been.


:cool: » For everyone


New & overhauled features

- Quick Edit was completely overhauled. The textarea's height will now adjust to the original post height, making it easier to hit that 'Cancel' button if you change your mind. Also, the height expands or shrinks to follow the cursor when you're editing a post. Seriously, that's wicked. What? Facebook already does it? Oh, bugger...

- Relative dates on topic posts. Some people like seeing "5 hours ago" better than an actual date, so... That's for them! I started liking this, too, but I'm not using it everywhere. For now.

- PM menu is now a notification area in the header. It's clickable, and brings up a menu where you can preview your new PMs, or open your inbox. This was Arantor's final contribution to Wedge. Oddly, I never got used to it, and will probably add a link to your inbox in the profile menu, but I'm keeping the notification menu as it, out of respect. Also, I modified the system so that previewed PMs don't get marked read, so that you can preview a PM on a mobile device, and still be reminded to answer it when you're back on a desktop machine.

- New Stats template for daily/monthly stats. Instead of tabular data with a bunch of numbers, you now get a pretty little line chart (custom JS library based on another one), animated and all, and you can even zoom through parts of it, and choose any time span you want to analyze. I spent a week on this one; while it may take you some time to get used to it, eventually you'll have to recognize it's a real improvement.

Usability

- After marking a topic as unread, next time you visit that topic, you'll now be brought to the last page you were on.

- Previous/next topic links now properly lead you to the first unread post, if it's not in the first page.

- Now showing language flags in a select box, to avoid breaking layouts when adding or removing language packs.

Privacy & contacts

- I haven't done much on privacy, but I did some work in late October, and managed to get privacy running (when it didn't really work when I wrote the blog post), especially on thoughts. The code was simplified (a lot), and thus it should be easy for any plugins to add privacy to their own settings. I still need to fix privacy on 'children' of items that are using a contact list for privacy. Privacy options include: everyone, members, specific membergroup, specific contact list.

- Worked on contact lists at the same time as privacy, so it's in the same situation: working, but very basic for now. Your old buddy lists are now imported. You can put members into multiple contact lists (it took me some time to determine what to include, and the result is very close to Facebook's list types, so I guess they got that one pretty much right), and create custom lists. I have yet to write the UI for handling these lists, though, but it's a good start. The rest is just boring work that could be done by anyone, not just me.

- Contact lists include a 'restricted list' that acts as a 'cancel' (I wouldn't say 'ban') list for any other list, i.e. if someone is put there, they won't benefit from any access rights given by other lists they might also be in.

Skins

- Added a new skin, Wilde, which has proved so popular that it's now the default skin in Wedge.

Performance and tweaks

- Regular popups are now hardware accelerated. They look fantastic on mobile devices now.

- Zoomedia (the light and efficient JavaScript library that I wrote to replace Highslide in media embedding) is now fully hardware-accelerated, Retina/HD-friendly, and rewritten to better handle item descriptions.

- Improved (and fixed) homepage view in blogs, such as this one, notably in mobile devices.

- Improved the follow_me code to be pixel-perfect. You know, the trick that makes avatars stay on screen when scrolling through a long post. I'm planning to add support for a pure CSS technique that will save the JavaScript calls on each scroll event, but as it's not supported anywhere until it's a candidate recommendation, there's no hurry in doing that. Follow_me works right now, and on every (good) browser.

- Also overhauled infinite scrolling for a more 'expectable' approach and better performance.

Ich bin ein Berliner

- Added full German translation, courtesy of Pandos.

Bug fixin' for the masses

- Fixed spoiler tags to properly accept spaces in their button descriptions.

- Fixed a long-lasting bug where quick editing a message you'd just posted would mark this message as unread.


8-) » For admins/webmasters


- Rewrote admin area's setting page generators. They're now all unified under one function, and it's seriously for the best. Default member options are now developed by default, which is easier to handle.

- The sendmail() function now saves more bandwidth when sending e-mails, and properly does HTML and raw handling.

- You can now simply debug junk and only show SQL queries if you're not interested in getting template block lists. Saves some bandwidth for admins, so why not!

- Overhaul of the caching code for cache libraries such as memcached and Zend SHM.

- Tweaked board and topic permissions to make better sense out of some actions.

- Themes: turned all 'general' theme options into basic settings.


:geek: » For developers


- Development workflow is now based on git, as you may have already noticed from the numerous topics about it. I'm getting better at handling this every day, but I have to say, it's really, really not user-friendly, especially for those coming from Subversion, which is so much simpler. If I had the time, I'd make a fork of git that acts exactly like SVN in every aspect.

- This just in: PHP source file caching and minifying. It doesn't save a lot of time, but I'm not against a 0.01s improvement in page load, especially across many page loads. Your server will thank you for that. Also, it paves the way for the return of source file patching through plugins, but in a more secure way, as you'll be able to update your Wedge source files and still have your plugins running fine. That's called the future.

Skins

- Skins now allow you to override any template function without the need for a file edit. A serious milestone for me.

- Official support for IE 11 (although I've since uninstalled it), and interestingly, added a converter to automatically turn modern CSS flexbox into IE 10-compatible syntax (on IE 10 only, of course.)

- Skin options and actions can now be limited to a specific page, page type (board?) or action on the website. They can also be limited to a specific browser or anything accessed through we::is(). Finally, script and css tags allow including an external JS/CSS file in any of your targeted pages.

- Wess (CSS) files now accept the use of $txt, $settings, $context etc. variables directly in the code. Rewrote variable handling code for much better flexibility in @if tests (same for we::is PHP tests). Overall, this allowed me to remove a lot of CSS for non-members. Rewrote color functions to harmonize them. Rewrote math() function to allow a clear indication of variable types (int, float, boolean) and handle recursive brackets.

- And, best of all... Themes are now GONE. Well, almost. Removed thousands of lines of code pertaining to this outdated, horribly complicated system. More still to come. Skins in Wedge are powerful enough to replace 100% of a theme's capabilities, so it shouldn't be a problem -- just requires learning how to write a skin, which is just a matter of reading through a commented XML file!

Bug fixin'

- Removed hundreds of unneeded globals, and added many globals that were needed, but undeclared (I'm surprised I could find so many). This is all thanks to the fix-globals.php tool script I wrote for this very task. It's much, much easier than installing HHVM on a Linux VM, and running it on my site. Seriously.

- Fixed many old SMF bugs. And old Arantor bugs, too. And a few of mine, of course.


:ph34r: » Things left to do


- Remove themes entirely. Working on it.

- Modify folder structure. I'll move all non-code elements to a root /assets/ folder, and probably move the /skins/ folder to the root, too, although maybe under the '/themes/' name -- I'll decide when it comes up, it all depends on whether templates go to /themes/ or /templates/. Obviously.

- Flatten skin folder structure (as indicated in the previous blog post; the code for this is already written, I need to rewrite it a bit though, before I can commit.) This will allow you to have sub-folders in your skins, where you can put your assets, or even replacement templates.

- Moving AeMe comments to topics, and topic attachments to AeMe items: there's a very small chance it'll be in v1.0, though I certainly won't postpone it for these features. I put them aside for too long, I'll have to deal with writing an automatic import session, like I did for buddy lists.

- New personal target for first public alpha: January or February 2014. I could have said "late December", by giving up on visiting my family, watching new Doctor Who and Sherlock episodes, and having a life more generally. It was a tough choice.

So... What do you think about the post-Arantor era? Is it the same Wedge you've known all along, moving fast and in interesting directions?[2]
 1. And also a good opportunity to celebrate wedge.org's 2001st topic?
 2. Apparently, generic stupid questions that you already know the answer to are a must at the end of a blog post, as they're supposed to increase user engagement. Don't make me say I said it, though. Because I didn't! Do you think I did? Feel free to say it!
2
The project / Re: Ask for access to the new private Git repo!
Pandos « on November 1st, 2013, 11:34 AM »
Quote from nolsilang on November 1st, 2013, 10:34 AM
Will the alpha come with converter/upgrader from SMF2? I want to try it first to my small community (1500++ post currently).
Yes it will. :)
3
Development blog / The zombie strikes back
Nao « on September 18th, 2013, 11:10 AM »
So... It's been over a year since the last blog post, and a few weeks since we celebrated the 3rd anniversary of the creation of this little project called Wedge, that took the life of two promising web developers and turned them into lifeless zombies with a crave for blood. Oh, maybe I meant vampires.

For those of you who didn't follow the latest developments on the forum, I'm sad to announce that one of the zombies is now officially resting in peace, carrying his own head, basking in the glory of his past achievements. Said zombie we called Arantor, and in pure retirony style, he decided to call it quits a couple of days before the anniversary. And I'd planned to show up at his door on that day and give him cookies! Well, no cookies then. Blame that good old UK craze about cookies.

And here we are. It's lonely at the top, but at least it means I get to make some hard decisions that we always postponed because we weren't sure about them. Same for Pete on his side, I'm guessing, albeit with other projects. I'm hoping we'll still see him pop up from time to time, and share his disbelief about how badly I handled the project. I always appreciate constructive criticism, after all.

Now, here's the point I wanted to address. There you go, Pete's state of mind up to this point was that we had no plans to release Wedge in the near future, that we didn't even have a tentative release date, and that it was even unlikely to ever happen. I understand his position, I'm not going to put the blame on anything; fact is, yes we slowly drifted apart as collaborators in the last couple of years, mostly because of real life issues for each of us, and because the weight of the project started to get very heavy year after year. The longer you wait until release, the more pressure you put on yourself to make it worthy of the wait.

And this is my first decision.

I'm putting Wedge on the road it should never have left: the road to release. Not the road to completion, which is a different thing altogether. With such a huge project, one man alone just can't complete the project. At most, he can do 80% of it, but he has to rely on other people to do the rest, simply because there are always some tasks where you know that other people will do a better job; that's what kept Pete and I together for so long, and I was hoping it would remain that way, because we really were complementary on most points. Working alone is not easy. Some days, you just want to say "screw Wedge!", and watch a movie or a TV show for hours. And you know what? I'll do just that. I've seen tons of silly and better movies, and I'm still going back to Wedge every day, because if there's something I'll never, ever give up before it's out for the public to enjoy, it's Wedge. Even if it doesn't bring me a dime, I need to finish it.

So, what's the tentative release date? Nope, sorry... There still isn't any. And before you ask why -- ask yourself whether you prefer to be given a wrong release date, or be told exactly what remains to be done to have a releasable product. To the former, I'll just say this: I'm hoping to release a public beta before the end of the year, and a final 1.0 in early 2014. Do what you want with that silly date, and if you're in too much of a hurry, and you consider yourself to be a hardened, hardboiled, hardcore, hard-wired forum administrator with a taste for trouble and a love for HTML/JS/CSS/PHP/FTP tweaks, you can always contact me with a request for private beta access and a copy of the SMF importer code.

To the latter, I'll be more thorough. First, I'll try to list a few of the things I wanted to do since day one, and will probably not do in the first release... Aeva Media is a monster to handle, it used to be my full-time (unpaid) job. I wanted to redo so many parts of it. Most importantly, I wanted to replacement attachments with media items; I'm still planning to do it, but if it's not done when everything else is ready, I'll still release. Also, Noisen.com features... I wrote many features for my personal website around 2007-2008, and was adamant I'd include them. Pete persuaded me otherwise, for very good reasons mainly, but now that he's gone, I can decide, if I want, to fail in a spectacular fasion. Go get the pop-corn. Again: if it's not ready when the rest is, I'll still release.

And now, for the features that I can't see myself release without.

- Privacy (estimated amount of work: a few weeks) : there are already some privacy features in; thoughts have privacy. Topics have some sort of privacy. I'm hoping I can do board privacy, à la Noisen, and profile privacy, à la Facebook. And fix an annoying bug in the 'Contacts' option: if you post a thought for your contact list, and someone replies to it, and you're not in their contact list, then you won't be able to view their reply. To be honest, I've thought of several solutions for that, but it's hardly anything solid, or at least efficient.

- Contact lists (a few weeks): so far, Wedge has been using SMF buddy lists, while Noisen has been using a customized version of Ultimate Profile (a nice little SMF mod from back in the day), where I allowed you to 'hide' a contact from view, and nice little things like that. Contact lists are my biggest project right now, I've already started work on them, but still need to write the UI, and some other things, to make them usable. The idea is that you can categorize your friends into multiple lists, choose the list name, and even determine the visibility of said list to profile viewers; you should be able to add people to multiple lists, and target a thought/topic privacy to a specific list. (Not multiple lists -- it's already complicated as it is, UI-wise.) My biggest issue right now, is handling the aftermath of adding someone to a list. Should they be notified of it? Should a list have a setting to determine if notifications should be issued? Et cetera, et cetera...

- Skins (a few weeks?): there are two things here.

(1) I'm not sure whether I should enforce sub-skins to be put inside a parent skin's folder (which I always found to be a natural thing to do), or simply require them to specify the name of their parent (author:skin_name) in a skin option. The latter option would allow skins to have folders for images, templates, etc. without the need for a different folder naming scheme, such as adding an underscore (_) before the name of any folder that isn't a sub-skin.

(2) As I discussed recently in the Friends board, I'm very, very tempted to remove themes from Wedge entirely. Just like Pete removed SMF packages when he finished his implementation of plugins, I'm in a similar situation where my skin system can do 99% of what templates can do, and it's just tempting to say, "themers have to re-learn mostly everything anyway, so I might as well get rid of that relic." Recently, I implemented one of the last things missing from skin features -- the ability to override/before/after a template function from within a skin.xml file. It was already possible to override a function through the use of a Custom.template.php file inside the skin, but it's not a rock solid solution because of the possibility of conflicting function names, and I only added this as a way for themers to 'test' their replacement code in a comfortable PHP editing environment, before they simply move their functions to an XML editing environment, without the proper syntax highlighting.

- AeMe comments (a week?): I'm planning to remove them entirely, and replace them with regular board topics. The idea is to create a generic board (hidden or not), where topics are created on the fly when posting a comment to an album or a media item. The advantage is that you get to comment on whole albums as well, and that you can search inside media item comments. The drawback is that I'm not planning to write an import tool for existing comments. They'll either have to go, or Thorsten (@TE) will have to account for them in his fantastic OpenImporter tool. Oh yes, and another drawback-- I'll have to handle attempts to access a media comment topic directly, by redirecting to said media item (or album). I don't know how I can do it efficiently, though.

- Others (weeks? months?): There are, I'm afraid, many other things that I'll attempt to fix before I go public, but none of these should be as big as the aforementioned items. When added up, though, they will probably take more time than them to complete, and there's always the tiny issue that my to-do list always seems to grow twice faster than I can shorten it. I'll have to pick a time when I figure that, well, it's okay Nao, it's okay... You can release.

With great power, comes gr... Oh no, not that Spider-Man crap again. But still, Wedge is an important project, one that could bring a nice breath of fresh air to the forum world, and even to the CMS world. As in, "community management system", not "content". I'm devoted to making Wedge a great, fun way to communicate with people, be they your friends or ephemeral guests, and help them feel at home and find the answers they seek.

And if it works, then maybe, in some way, it wiil also be the answer I've been looking for.
Get to work, Nao... Now!
4
Off-topic / Re: Is Wordpress actually Most SEO CMS?
Arantor « on August 23rd, 2013, 01:44 AM »
Here's the thing... Google changes its algorithm regularly. Far too regularly, including reranking, for anyone to be able to understand what's actually going on. What worked 6 months ago won't work so well today, and probably might work again better in 6 months time.

Google uses a lot of things for ranking. One of the key things is to do with link 'reputation'. Inbound links to a page, outbound links from that page, and so on - a lot of inbound links to a page that aren't site-wide navigation are important, and are a sign that a page is probably more authoritative about its content. (Not the only sign but a sign, sure)

If a page is new, it doesn't have that - but if a page is old and doesn't have many inbound links, odds are it's not that authoritative either. In absence of any other relevant criteria, Google seems to be taking the newer page as slightly more authoritative for simple virtue of the fact that it's newer and presumably therefore not outdated contextually.
5
The Pub / Where are we?
Powerbob « on August 21st, 2013, 07:32 AM »
Any chance of a progress report guys? ie where we are are at in the "grand scheme"? :cool:

Cheers
Bob
6
Off-topic / Re: Slideshows
markham « on August 30th, 2012, 11:33 AM »
Thanks Kindred :)

Unfortunately some bugs got through and may show up in your Forum's Error Log; sorry about that :blush:

I am attaching to this post the archive of what I would consider the first releasable version (1.1.0). As well as squashing all the bugs I could find, I've considerably enhanced the documentation, mostly in the two main PHP files.

Other changes/enhancements include:
  • Full support for Aeva 'embed' as well as 'image' types - you can now choose one or both (or none!). I've not included either 'audio' or 'video' types since there's no player.
  • There's now no need to provide or define a static image when adding embedded videos. Simply define that member ('picurl') as "" and a default blank image will be substituted. However, if captioning is active, captions will not be included for that video item - captioning only applies to non-blank images.
  • Added "guardian" index.php files to all directories to prevent listing, downloads etc.
  • The "Re: " prefix to message titles is now stripped-off when preparing the captions for attached pictures.
  • Removed all unnecessary variables and generally tidied-up the code.

Arantor: I would be very interested to learn what would be required to turn my effort into a Wedge plug-in :)


Mark

[Fichier joint supprimé par l'administrateur]
7
Off-topic / Slideshows
markham « on August 28th, 2012, 07:14 PM »
I really didn't know where to post this, so please move if necessary.


Many non-technical Forums such as travel forums or those dealing with a certain type of community, often want to include some form of slideshow on their Portal page. It provides visitors with something colourful to look at and can be a good recruiting tool for new members. It also provides a certain "feel good" factor to those members whose pictures are featured, makes them feel wanted and a definite help in building strong communities.

I've been somewhat underwhelmed by the features provided by the scant few slideshow offerings available for SMF, so I have put one together based on an open-source Javascript "engine", "Camera" (JQuery). I've written a PHP backend that provides all the configuration options - some 45 in number - as well as providing the facilities for including pictures from:
  • Forum messages, and/or
  • Aeva Gallery Albums, and/or
  • Any picture directly addressable by its URL
Pictures can be selected from either the most recent or at random and, in Aeva's case, either from all albums or just those albums that are specified; permissions are, of course, obeyed. The Javascript "engine" uses "lazy loading" and downloads the next in sequence as soon as the currently displayed one is fully-shown.

There are simply too many features and configurations to give justice to in a single post, so as a picture is often better than a thousand words, point your browser here where you'll see a slideshow of pictures taken in Davao last weekend. ("Kadayawan" literally means "harvest festival" and is a very colourful week-long fiesta of music and dance competitions culminating in two distinct parades on the Saturday and Sunday.)
If you view on a mobile device, "swipe-left" and "swipe-right" will display the next/previous pictures.

See also the ZIP file attached which contains the Portal Block code as well as all the supporting backend, JS and CSS.


Enjoy!
PS: Why are paragraphs not working? :)

[Fichier joint supprimé par l'administrateur]
8
Off-topic / Re: Doctor Who
Nao « on August 10th, 2012, 09:44 AM »
Quote from Nathan Sparrow on August 9th, 2012, 05:50 PM
(click to show/hide)
If this is true, he would have rewritten time to get Amy back but like Rory, he shouldn't save him in "Cold Blood" but we will see.
(click to show/hide)
AFAIK, the Doctor can't rewrite time if it has already happened to him or something like that... There's a matter of stability at play. He mentioned that in some episode in the past.
Posted: August 10th, 2012, 09:39 AM
Quote from Kindred on August 9th, 2012, 09:40 PM
start with Doctor #3 (John Pertwee) and watch through doctor #5 (Peter Davidson)
those are the classics.
Doctors 2 and 6-8 were water, IMO...

Doctors 9 (reboot, Christopher Eckelston) 10 (David Tennant) and 11 (Matt Smith) are all awesome!
The old series are good if you have no issues with bad SFX and cardboard settings...
I probably would never have got into Dr Who if it wasn't for the revival.
Even then -- the first series of the revival is quite ridiculous at times. They did a lot of work in series 3 and later to fix that. At that point it even became a little bit too serious, but OTOH it was simply thrilling... The best episodes are in series 3 to 6.

I'll just give my sincere opinion based on a real life example: the absolute best entry point into Dr Who is the series 3 episode, "Blink". Because (1) it's one of the best in the entire show, and gives you a real feel of what it can achieve, and (2) the episode is told from the POV of a new, unique character we only see in that particular episode, so there are no loose ties, and she discovers the Doctor as an enigmatic entity that she'll never forget.
I actually showed that episode to a friend who didn't know a thing about the Doctor. Two weeks later, he told me he'd watched the entire show (series 1-4 at the time.) And was addicted, of course. Heck, at that point he knew the show better than I did... (Which isn't surprising. I tend to forget storylines are I've watched them.)
9
Off-topic / Re: Doctor Who
Kindred « on August 9th, 2012, 09:40 PM »
start with Doctor #3 (John Pertwee) and watch through doctor #5 (Peter Davidson)
those are the classics.
Doctors 2 and 6-8 were water, IMO...

Doctors 9 (reboot, Christopher Eckelston) 10 (David Tennant) and 11 (Matt Smith) are all awesome!
10
Off-topic / Re: Doctor Who
Dismal Shadow « on August 9th, 2012, 06:08 PM »
Quote from 0x on August 9th, 2012, 06:00 PM
This is a noob question, I don't know anything about Dr.Who but I'm interested to watch it. There are several seasons for Dr.Who, any recommendation which season I start?

Cheers.
Start with the 2005 reboot. http://en.wikipedia.org/wiki/Doctor_Who_(series_1)