administration mode
Pssst...Ferdy is the creator of JungleDragon, an awesome wildlife community. Visit JungleDragon

 

I'm now an Open Group Certified IT Specialist - Level 2 »

FERDY CHRISTANT - JAN 26, 2015 (09:27:41 PM)

I hold 18 IT certificates, yet it has been a while before I could add this 19th one. This one concerns the IT Specialist certification of OpenGroup, level 2. In this post I'll explain briefly what it means. 

The IT Specialist certificate is not a certificate where you learn a technology and take an exam. Instead, it is all about verifying the skills you claim to have, in a very independent, thorough and standardized manner. You don't learn any new IT skill, it is about proving what you already claim to know.

You aim for certification by picking a stream, your specialism, which can be application development, IT support, portals, etc. I picked "Application Development". Next, you need to pre-qualify for one of 3 levels:

  • Level 1: Some experience (0-5 years) mostly as a developer
  • Level 2: Experienced (8 years or more), including experience with leading teams and seniority in communication and behavior
  • Level 3: Guru, leading in your industry, typically also including being a regular speaker at key events and writing research papers

After doing the intake, I qualified for level 2. Next, the process starts which can roughly be summarized like this:

  • Write the certification package (more on this below)
  • Package gets reviewed by a domain owner
  • If it passes, a board review takes place. 3 people will interview you about your package
  • If it passes, you're certified

Writing the package

By far the biggest task in the process is writing the certification package, so I'll elaborate in this area some more. This is a task that on average takes 40-80 hours and can take even more if you face rejections. Rejections are not unlikely, there's many potential reasons for it.

You write your package using a predefined template supplied by OpenGroup. It is very important to read all rules associated to the template in detail, as any violation can be reason for rejection. The template consists of 4 parts, which I'll explain briefly:

Project history

This is part 2 of the template, but it is recommended to start here. Invest your time here, it will make all the rest far easier. In this section, you describe you entire history of projects, including project names, major activities you did, start and end dates, etc. 

So I had to go back in my 14-year professional history to collect all that, via emails, old documents, etc. It's a tedious task but you have to do this. There cannot be any holes in your history, and the data must be sound, as it will be checked.

Note that "Project history" is not really the best term I could use, as in this part, you also have to list your educational history, speaking engagements, books you read, etc.

This is also a good reminder to properly organize your work files, data, emails so that you indeed can go back.

References

This is the 4th and last part of the template, but I recommend to fill it out after "Project history". In this part, you will include references from the projects you claimed in the "Project history" section. That's right, you have to chase down people from your entire history. Next, you include their response (for example a screenshot of an email) in this part of the template. You also supply their contact details so that the references can be verified. And that will happen, with all of them.

Some extra tips on references: use clients and project managers, not your own direct manager. Make sure they really are project contacts, and not role-contacts.

Experience Profiles

This is the 3rd part of the template, which I recommend you do next. In this part, you pick 3 projects from your history. It's best to pick big, interesting, succesful projects where you played a large role. Next, you describe these 3 projects in great detail, in particular your role in it, by answering each question per experience profile.

With your project history properly prepared, this part is not hard, it's just a lot of work. Invest in high quality answers and good writing, as these experience profiles are used a lot during the board interviews.

Compliance with skill requirements

This is the 1st part of the template, and I recommend you do it last. This section comprises a large part of the template and includes a few chapters, each having many questions that test whether you comply with the skills required for the certification level. These are not technical questions, here's some example questions you can expect:

  • List 3 projects where you decided on the solution design, list pros/cons of each option you considered
  • List 3 presentations you created and presented to an audience that altered a solution direction
  • Etc

You'll find a lot of questions looking alike, making you feel you are repeating answers all over. Be sure to read each question carefully and answer it to the point. Answer what is asked, and don't go copying and pasting answers.

Anyway, this major part of the template should be easy to fill out if you did your homework, meaning doing the 3 other sections I mentioned first. Do that right, and this part is easy. A lot of work, but easy enough.

Domain owner review

With your package done, a domain owner will review it before it can get to the interview stage. Make good use of this pre-review and alter anything remarked by the domain owner. Better yet, meet with the domain owner before writing the package, to get valuable tips. The domain owner can reject your package as often as he/she pleases, so you will keep going through this step until it is fit for the board review.

Board review

In this phase, a board comprised of 3 people will interview you, one interviewer per session, so 3 sessions in total. Here you are asked to elaborate on your answers in the package. If you were honest in your answers, you have nothing to worry about, just answer clearly, concisely, and with confidence.

Another important aspect of the interview is that your communication skills and attitude are tested. For example, 2 out of 3 interviewers really focused on the content of my package (which is great), yet the 3rd one focused more on the bureaucratic aspects of the package. Things like the file name and specific language constructs. It's important not to get angry, keep your professional courtesy. It's part of the test. 

After the 3 interviews, the board will meet without you. If 2 or 3 vote to let you pass, you will pass. If 2 vote not to let you pass, you are rejected and probably have to do a ton of rework. 

Wrapping up

My experience with this certification is that it really tests your patience. There's a lot of homework to do, and a lot of rules to follow. Take the advise of others who have done it, and avoid rejections that cause a lot of rework. I've seen people flip over unexpected rejections. Never lose your temper or patience. This is very much a test in durability.

In the end, you will have a pretty valuable and independent assesment of your skills, of which large parts can be used as a resume. It's tedious, but valuable work. An investment. 

JungleDragon's spectacular server move »

FERDY CHRISTANT - JAN 22, 2015 (02:12:40 PM)

This week, JungleDragon moved to a brand new server. The move is an interesting story in multiple ways: in timing, in technology, and in the incredible advancement in power and scalability. In this post, I'll share all those aspects of the move.

Why a server move?

First a little info on the hosting situation. JungleDragon does not own a server, we don't even hire one. Instead, JungleDragon is hosted at a server in Amsterdam that is leased by Bas Peters, a friend, ex-colleague and also a JungleDragon user. Ever since JungleDragon went live (2011), Bas has generously donated this hosting space to us for free, an amazingly kind gesture.

Technically, that means that the server hosts the web server, JungleDragon's codebase (in PHP), and the database. JungleDragon's image files and static files are hosted elsewhere, on Amazon.

At 8 years old, the "before" server was aging, both in hardware and software. However, it still ran fine without any serious user-facing issues. A move would eventually have to happen, but not neccessarily right away. Instead, the reason for the sudden move was contractual. It's a thing between Bas and the hosting company.

On monday of this week, I heard that on tuesday, the move had to take place. Whilst at this point I accepted this sudden move as a given, a fact of life, it did stress me out. I worried about downtime, in the middle of a contest. I also worried about whether it would work, as JungleDragon has many moving parts. And to make matters worse, this was in a week where I was already occupied with work and important social obligations.

And it gets better: the more I learned about the new server, the more I realized that literally every aspect of the stack (web server, php engine, database server) is fundamentally different from the old server. 

A fine setup for an IT war story I'd say :)

The move

Without boring you with much technical details, here is a summary of how the move went:

On monday night (after hearing the news), Bas and I prepared a document with all relevant tasks to do, in the right order. This would allow us to be efficient and thorough on the day of the move, tuesday.

On tuesday night, it was judgement day. At around 8PM CET, we took JungleDragon down and started working on the list. The great thing is that Bas and I have worked together for years in earlier times, so we communicate well. We speak at the same level. With my knowledge of JungleDragon's codebase and settings, and Bas' knowledge on system administration combined, it seems no problem was too hard to tackle.

We were doing well, and brought JungleDragon back up 5 hours later. We were now on the new server already, with minimum downtime. We were not there yet, however, and we were deeply into the night, still looking at some todo items. We were not going to finish it all that night, so we split the list in critical issues and "later" issues, to be picked up the next day.

The only really critical issue remaining was that social login did not work, meaning signing in via Google, Facebook, or Twitter. All other things that are user-facing seemed to work. Providing a fix on wednesday proved difficult as we both had a full day of work at the day job, and I had a birthday in the family to attend in the evening. 

But we turned it around, again. After returning from the birthday, I connected with Bas, and we pulled another late night session. Together we managed to solve not only the critical issues, also the "later" issues. That same night I removed the banner that was warning users of the move. The move was succesful, in hindsight with little inconvenience for users.

The new server

Such was the story of the timeline and the move. A story of temporary stress that is already behind us. The uplifting part is that we traded that temporary pain into lasting awesomeness. I'll now go ahead and explain the technical aspects of the stack of the new server. If you're not interested in the technology, no worries, I'll follow this part with real-world indications of what it means to users.

Hardware

Here are the specs of the new server:

CPU: Intel Xeon E3-1245 v2 (3.4 Ghz, 4 cores / 8 threads)
RAM: 32 Gb 1333 Mhz
DISKS: 3 x Intel 320 SSD (300 Gb, RAID 5)
RAID: LSI MegaRAID SAS 9260-4i
Netwerk Uplink: 1 Gbit

I honestly don't have the specs of the old server, but you can be sure that this one is dozens of times faster at the hardware level, given there's 8 years in between them. Another huge factor is of course the arrival of SSD. This server is quite a beast.

Operating system: from CentOS to Debian/Ubuntu

My development machine for JungleDragon runs Debian, yet the old server was running on CentOS (RedHat). This difference brings minor annoyances, but once it works, all is good. Still, it is nice that the new server runs Ubuntu Server. This means that the OS is much more like my development instance.

Web server: from Apache to Nginx

Apache powers the majority of the world's websites, so it's definitely not a bad web server. Why the switch to Nginx? I think this quote explains it well:

"Apache is like Microsoft Word, it has a million options but you only need six. Nginx does those six things, and it does five of them 50 times faster than Apache."
— Chris Lea 

Besides the heavy vs light difference (Apache vs Nginx), another fundamental difference between Apache and Nginx is how they work. Apache is process-based, and will spawn a new process for each connection, each consuming lots of RAM. Nginx, however, is event-based. It has few, sometimes even one, process(es) listening and handling web requests as they come in. It does so with very little CPU or memory consumption.

Nginx can easily handle thousands of requests per second, and still only consume 10% CPU. It is built to be awesome at a few things, and to be extremely scalable. Nginx is in use at many world class websites. It is often used as a reverse proxy server in conjunction with Apache. 

In the case of JungleDragon, Nginx is the only web server now, so there's no Apache anymore at all. Making the port took a bit of fiddling. Specifically, Nginx has no .htaccess files, so you need to replicate rewrite rules in a different way. Bottom line, we succeeded.

As a result, we now have an extremely light, fast and scalable web server. Note that for a total website to scale, all parts of the stack have to scale, but this part is solid. It handles web requests in milliseconds, effortlessly.

PHP server: from PHP to HHVM (HipHop VM 3.5.0)

So we had a radical change in web server, the next part of the stack is at least equally radical. Before, we used a classic LAMP setup with classic PHP being used, via Apache's mod_php module. Things couldn't be more different now.

JungleDragon's code now runs on the HHVM engine. I actually had to look it up myself. HHVM is an open source engine for PHP and Hack, created by Facebook to dramatically speed up their PHP.  The speed is largely acquired by not interpreting PHP during run-time, instead they compile PHP code into bytecode using a Just-In-Time (JIT) compiler. Next, that bytecode is continuously optimized to run on the underlying hardware as efficiently as possible. The first few times any script is run, HHVM will just let it run unoptimized, but over time each script will get more and more optimized, automatically.

This engine is gaining a lot in popularity recently, as they now support pretty much all PHP frameworks (including CodeIngiter, which JungleDragon uses). Furthermore, a few huge players like Wikipedia have switched to HHVM. It's becoming a powerful force in the community, and it even puts pressure on the "classic" PHP team to get their act together.

Technically, HHVM is compatible with version 5.6 of the PHP language. This means a major version bump for JungleDragon, coming from 5.1. It also means a more secure situation, as anything below PHP 5.4 is no longer actively maintained.

So, did it take a lot of effort to move from PHP to HHVM? None. Really, none at all. We experienced zero issues in this area of our bold move. The performance effect likely is incredible, but currently hard to put in a number, because every part of the stack was upgraded. 

Database server: from MySQL to MariaDB

At the database level, we switched from MySQL to MariaDB. MariaDB is the open source fork of the original MySQL, which is now owned by Oracle. MariaDB claims near-full compatibility with MySQL and that is exactly what we experienced: we had zero issues moving to this database server. Along with this move came a MySQL version bump.

The new server, real world benefits

So we moved to this crazy new bleeding edge stack of software, running on incredible hardware. In case you aren't interested in the details of the setup as explained above, let us discuss what this all means to JungleDragon users as they use the site.

General usage

With general usage I mean just clicking through the site, opening pages. You should be able to notice that the site is a lot snappier now. As you click a link, the page will almost instantly appear. After initial appearance,  it may still take a while to load images (that part hasn't changed, as they come from Amazon), but the page itself is there right away. A great general performance bump that you experience almost every click!

Heavy queries

Most pages that you open on JungleDragon have their queries optimized so that you shouldn't have to wait on the database for long. There are, however, a handful or so that I still had on my todo list of things to tune. Here's an example:

http://www.jungledragon.com/wildlife/photos

That page has some very heavy queries that before took 6-10 seconds to load. Note that this is still without the extra overhead of network or image downloads, I'm talking about raw database wait times. On this new server, the database time is far below 1 second. Take note that there's at least 3, untuned heavy queries on this page. It's an incredible bump in database performance. A bump so large that it instantly solves the weaker parts in my database implementation (although tuning obviously is still a best practise).

Heavy actions

And now things get very, very interesting. JungleDragon has 2 essential actions that can be considered "heavy", they require a lot of calculation as well as database transactions. They are

  • Identifying a species on a photo
  • Uploading a photo

Let's start with identifying species on a photo. By chance, I had already dramatically improved performance a few weeks before, from 16 seconds, to 1-2 seconds. So what happens when this already-tuned "heavy" action runs on this new server? It gets even faster. So fast, in fact, that you barely see it happening. It is simply instant.

But things can get even more spectacular. Let's talk about uploading a photo. JungleDragon has a multi file uploader where you can select up to 5 photos at once. After you made the selection, the upload process starts. In this part of the total process, the files are transported to the web server. The speed at which this happens solely depends on your personal uplink, so I cannot influence it.

What happens next though? As soon as JungleDragon has received the file, it will start processing it. This is a very heavy action, as it needs to cut out 6 formats, sharpen those 6 formats, as well as doing many database transactions, all whilst the user is waiting.

The processing step performance before really depends on the resolution of the photo. The processing engine has to push around millions of pixels to get its job done, thus the larger the photo, the more work (in two dimensions). For example, on the old server, if I would upload a very high res photo (which is what I do, I upload insanely large 36MP photos coming from my Nikon D800), the processing step would take 20-30 seconds per photo. If I would upload multiples of those 36MP photos, it could take between 1-2 minutes before they are all processed.

Now? Yesterday I uploaded 5 36MP photos at once. The processing time of all 5 combined was about 2-3 seconds. It was so fast, in fact, that I thought it failed. It can't be done, something is wrong. But nothing is wrong, this simply is the new level of performance we're at.

Interference

As explained above, even very heavy tasks in JungleDragon are now near-instant. And this brings another positive side effect. Before, JungleDragon sometimes had unexpected delays for even simple actions. It did not happen often, but it happened. This was due to another user doing a heavy action (like processing a photo), which locks up the server in some way. 

As those heavy actions are now much faster, if they lock up something at all, it will be very brief. Thus, there is less interference between users, and maybe even none at all. 

Wrapping up

I know this is a long story, but it deserves to be told. We've succesfully moved to a new server that is far faster, more scalable, modern, secure and provides head room for growth. It hasn't just made JungleDragon significantly faster, it has even made such a dent that it instantly solves some weaker areas of JungleDragon, by sheer power.

And we got all of this, permanently, for only a slight bit of stress. I'd say that's a pretty sweat deal. And that's the understatement of the year. 

I'll end this post with an ode to Bas Peters. Not only has he generously donated hosting space for all of JungleDragon's lifetime, he's also the one providing incredible support during this move, not resting before all was fixed. And now, now we're at a whole new level of power, again handed to us for free. Thank you Bas, it means a lot!

JungleDragon 4 - The Big Idea »

FERDY CHRISTANT - JAN 17, 2015 (02:15:09 PM)

JungleDragon V4 development has had a great start, with 5 updates implemented already since late December. With this post, I'm not announcing yet another new feature, instead I am reflecting on the biggest improvement I foresee in JungleDragon V4. Where V4 will have a series of several improvements across different areas of the site, there is one thing, one killer feature that really will define V4 as being V4. 

That feature will make some aspects of JungleDragon dramatically better, and in a way, may also change the community dynamics. As this feature is large, and development hasn't started on it yet, this post explains the idea before it gets implemented.

Countries

Let's get right to it: the core improvement I'm talking about revolves around countries. That doesn't sound terribly exciting, I know, but hear me out, there's a lot to it. A country is an immensely important thing when it comes to wildlife. A species occurs in a country, you are stationed or travelling to a country, a photo is taken in a country, and so on. And even if you're not actively photographing or travelling, exploring wildlife by country makes total sense. 

First, let us have a look at how JungleDragon currently deals with countries. There's 2 entry points to a country, from a user profile (if they filled out their country), or from a geotagged photo. In both cases, it will open an overview like this:

We see a country header with a flag, followed by a map with pins where photos were taken in this country. The map is obviously zoomed in at the specific country in question. 

That is basically it. Currently, in JungleDragon a country is nothing more than a group of map pins. The idea for V4 is to dramatically change this. 

The new country

Below is a very rough sketch of the idea I have for the new country setup. Don't mind the visuals, it's about the content:

I'll explain each part in detail...

Header

The header, as before, shows the countries' name and flag. However, it has a breadcrumb navigation that includes the word "World". Clicking that would lead to a new screen, which lists all countries, and per country some key counters, like photos and species. Thus, besides browing the world via a map, it can also be done list-based.

Tabs

Below the header is a large series of tabs, let's discuss each tab:

Map

This tab shows the country as it already did: using a map with pins for photos. No changes here.

Photos

This new tab, as you expect, shows all photos in that country. This totally makes sense, but in a way, such a thing is currently not possible in JungleDragon. To view photos in a country currently, you'd have to tediously click pins on a map, not great for mass consumption of a lot of photos. JungleDragon does have country tags currently, allowing you to see such photos, but never in strong relation to the actual country. 

Country photos will be sortable by popularity and post date. 

Species

This I deem to be the true killer feature. I'll explain in depth why this is the feature that keeps me up at night. Let me first explain what it is: it shows species photographed in that specific country.

There's 3 reasons why I am very excited about this:

1. It is a new dimension we did not have before

It is currently simply not possible to make a relation between a country and species. You can view a geotagged photo of a species, but there's no way to instantly see all other species found in that country. This feature will introduce that capability. And it is a powerful one. Both in your home country and your travel countries you will want to know what species to expect. Wildlife is local, not global.

2. It can become the digital equivalent of many wildlife books

Check this out:

This is the Sri Lanka birds book I bought prior to our trip this year. From previous trips I also have "Wildlife in the amazon", "Lemurs of Madagascar", and so on. 

So what do these guides do? They document wildlife or a specific category of wildlife in a given country. The new "species" tab at the country level does the same thing. 

Don't get me wrong, I'm not delusional. A real guide is very complete, has pinpoint illustration and useful info per species. But at the basic level, it's species linked to a country. You have to consider the value of seeing species linked to a country in a timeline of a few years. This feature works automatically, meaning that if we keep doing what we are already doing (identifying species on photos, geotagging photos), over time each countries' species set will get more and more complete.

And there's one more idea I have regarding this feature: endemic species support. As species are endemic typically to a country, we can now list them (we do need to add a field to a species record, to link it to a country). 

And...from a species record, we can now list the countries in which it was photographed. Instead of plain Wikipedia-like text regarding distribution, it will be real-world, dynamic information.

Only one thing concerns me regarding this feature: zoos. "Amur leopards" will suddenly pop up as a species in the Netherlands, if somebody photographes it in a zoo. I'm not sure how or if to solve that problem.

3. It brings a new community dynamic

Regular JungleDragon members typically obsess over identifying species. Getting it identified brings a small sense of satisfaction. Doing a species intro (first photo of a species on the site), however, gives us a really good vibe. It's addictive, it brings out the collector in you.

With country species, a new dimension is added to that. Even when you are not the first to introduce a species to the site as a whole, you may actually be the first to have photographed it in that country. Thus you have made a species country introduction, and that is a great thing. It brings a sense of accomplishment to yourself, but also helps the site grow its relation between countries and species.

And due to this new dimension of "collecting", one may also treat their photos differently. Say I make an average shot of a deer, in Germany. That deer is not new to JungleDragon, so it's not a species intro. You may therefore decide not to upload it. 

In this new situation, however, it could be that that species of deer, was not yet photographed in Germany specifically. Thus, although you do not consider it a top photo, it is a valuable contribution in other ways, and therefore you do upload it. 

And consider this: in some countries you are one of few JungleDragon members, you can be the absolute king of that country as it comes to species.

Parks

With the most important tab "species" discussed, there's more to come still. Parks. This will be a list of all national parks and zoos in that specific country. They are shown on a map or in a list, or perhaps both. For now, this would be an informational tab only. You can use it for travel, both in your home country and travel destinations.

There's possibly a lot more to "parks", I'll get back to that later in this post.

Users

JungleDragon's community live in countries, therefore we can list all members within a given country on this tab. The idea could be that this way you can actually meet each other if you'd like, but for that to happen, I will have to implement a way for user to user communication, which is currently not there yet. This one is under consideration.

Videos

Videos of a country. Videos are currently underused in JungleDragon, taking a back seat. This is therefore just an idea, I may initially not build it.I consider the other tabs more important.

Books

Yes, this is somewhat conflicting with my earlier statement of JungleDragon country species competing with real paper guides. Realistically though, both will coexist. Therefore, it would be cool to have wildlife book recommendations per country, to be supplied by moderators and/or myself. 

This would mostly be a feature to help travellers. I'm also thinking, however, it could be a small commercial opportunity. We can make the books affiliate links, so that we can earn a small percentage of book sales. With JungleDragon's current scale, I don't expect much from it, but it wouldn't hurt either. 

Travel

This is again a commercial idea, yet one for the future. The idea is to list travel organizations or deals on this tab. Thus, in a way, it is ad space. 

No worries though, I hate ads as much as you do. In this case, however, they would be contextual ads. They make sense. You're exploring a country and considering travel, and this tab can help. Like videos, I will not build this initially, it may be something for the longer term.

Countries - summarized

So above is the overview of the idea, to take the concept of "country" from just a group of pins to an incredibly rich entity inside JungleDragon, bringing along new dimensions to explore wildlife, but also to "collect" it. I believe strongly in this idea, and very likely will build it as such. It will be a large undertaking of at least several months.

But there is more, or there could be more. I want to come back to the topic of "Parks". I already discussed that I want to have every national park and zoo in the world listed on JungleDragon, so that you can also see them by country. That part is going to happen, for sure. I will make sure that data exists, so there's no work for moderators involved.

And then, then we will have a list of parks. We can see them per country, and we can see their location. Parks, however, can be so much more:

See above. This is a small species card called "Birds of Wilpaththu". It details birds found in that park in Sri Lanka only. 

I think you can imagine where I am going with this: all the things we just discussed at the country level, we can also have one level down, at the park level. Photos in that park. Species in that park, and the whole dynamics around it. 

However, there are two big challenges in the way. Challenges that do not apply to the country level:

1. Content spread too thin

JungleDragon has photos in a growing list of countries, in about 60% of the countries in the world. Thus, there is an initial content base that is usable. At the park level, however, this is far from true. There's a few tens of thousands of national parks and zoos in the world. This means that initially, most of those parks will have zero photos or species associated with them. For this to be useful, JungleDragon's content base has to become a whole lot larger.

2. Linking photos to a park

Photos and species are linked to a country automatically by geotagging the photo, but the same is not true for linking a photo to a park. There is no way to detect the park in which you shot your photo automatically, therefore it must be manually done.

How it is manually done is not my concern (can be an extra field or via tags), it is the fact that it has to be done manually that concerns me. It's already difficult enough to get the community to correctly share photos, it requires a lot of insisting by the moderators and me. Adding yet one more task to this "regime" worries me.

Parks - summarized

Because of the above concerns, "rich parks" may be something I will implement at a later time. The basic list of parks, however, I do have in the V4 planning.

Wrapping up

These were my ideas for JungleDragon V4's most important improvements: countries and parks. I hope I explained well enough why I believe they will make a big difference, I hope I convinced you of that. Please do let me know here or in the JungleDragon forum what your thoughts are.

JungleDragon 4 - Update 5 »

FERDY CHRISTANT - JAN 16, 2015 (06:44:10 PM)

We're 2 weeks into January, and this is already the 5th update of JungleDragon V4. Let's see what's new this time...

User species after-care

In the previous update, a new feature called "user species" was introduced, which allows one to see which species a member has photographed, introduced, and identified. The feature has been very well received, yet had an initial bug, which was solved soon after.

Counters everywhere

As of now, JungleDragon has counters on pretty much any type of "list", whether it concerns photos, tags, users, lists, species, etc. The counter can be found as part of the "More..." button in the bottom of the page.

Introducing "Seasons"

The most important part of this update, however, is a brand new feature called "Seasons". It's a reasonably simple idea. Based on your photo's metadata, JungleDragon will try to calculate the season in which your photo was taken: spring, summer, fall, winter. For this to work, your photo should have two items of metadata included:

  • EXIF capture date
  • EXIF GPS latitude

The latitude is needed because in the southern hemisphere, the seasons are opposite. If those two items are present (in practice this applies to almost all geotagged photos, about 10,000 currently), your photo will automatically have its season detected. Let's see how this works in practice. There's 2 ways to explore this.

See above. In the main photo selection menu, a new option "Seasons" is added. Let's click it:

See above. Now we're at the Season explorer. From here, you can pick the season and your desired sorting. All of this is automatic, no action is required for any photo to appear here as long as the EXIF meets the criteria. As with any image list in JungleDragon, you can play it as a slideshow. Here's a winter slideshow:

There's a 2nd way to explore this feature. Below is a JungleDragon photo page:

As this image meets the EXIF criteria, some lines appear below the geo map, let's have a closer look at it:

The bottom line "Captured in summer" is new. It will have a specific color per season. Clicking it brings us back to the Season explorer shown earlier. 

Note that this photo also has the line "View light conditions". This is an existing feature, but I'll explain it again as it is little known: for that line to appear, there also needs to be a GPS Timestamp. Unfortunately, few photos meet that criteria. But if they do, you can click that line to view the light conditions exactly as they were when capturing the photo:

Bottom line

With this new feature, we're adding another new way to explore JungleDragon photos, and there's no effort involved in placing photos in these "seasons". I did notice one pattern though:due to many of JungleDragon photos being taken in countries near the equator, the seasonal effect is not a strong as you may expect. For example, the "Winter" season will show you all photos taken during winter, but they will not give you only photos of snow, cold landscapes, dead trees, etc. It's not the type of winter scenes people in the northern hemisphere may come to expect.

JungleDragon 4 - Update 4 »

FERDY CHRISTANT - JAN 12, 2015 (10:24:29 PM)

This is the 4th update of JungleDragon V4 since starting development in late December of 2014. This improvement is a significant one. With an all-new feature, for the first time a strong link is  made between users and species, in various ways.

User species

JungleDragon users know that our site and community is all about species, and linking them to photos. As a result, for a long time we've been obsessing over photographing species, identifying them, trying to introduce new ones, and even help others getting their photos identified with a species. All of this is business as usual at JungleDragon.

Today, I'm releasing a feature that makes all of this species handling not just a shared culture, but also a personal one. How? By releasing species on user profiles.

See above. If you'd now open any user's profile, there is a new link "species". I consider it important enough to give it the 2nd spot, only after "photos".

Species you photographed

When clicking the species link on a user profile, three sub options appear. First, the default "Photographed" overview appears:

This overview shows the species you photographed. This means that this shows a unique list of all species identified based on your photos. One thing that may be slightly confusing is that we are looking at species here, not at photos. Thus, the cover photos shown for these species may actually not be your photo, yet you do have a photo of that species, otherwise the species entry would not appear here. Note that it does not matter who identified the species on the photo, you still photographed it, thus it appears here.

This overview is cool in that very quickly you can learn about a user (including yourself) the diversity in their wildlife photography. It may even bring out the collector in you, to keep growing this list.

Species you introduced

The 2nd option in the species sub menu shows "introduced":

This overviews shows species introductions by the user. Species introductions are the "gold standard" at JungleDragon. It mean you were the first to have a photo of that species on the site. 

The overview is similar to the "photographed" overview, but this time only showing species you photographed where you were the first to have a photo of it, regardless of who identified it. This is a powerful overview, as at a glance you can see how much new content a member has introduced to the site, which is an important metric.

For example, above we see user "Back Water Fox" with an impressive list of Australian bird species introduced to JungleDragon. This kind of value contributed is now very visible to all. 

Species you identified

The 3rd and last sub option in the species menu is named "identified":

This overview is different from the other two, in that it does not neccessarily concern your photos. Users like @Wildflower as seen above make an enormous contribution in identifying species on the photos of others. This overview makes all species identified by this user instantly visible, recognizing their effort. 

As explained above, all these 3 overviews list unique species, not photos. Thus, clicking any thumb will open the species' page:

Summary

JungleDragon now has a powerful link between users and species that can directly be inspected from a user's profile. Use it to check contributions, use it to fuel your species addiction, use it to appreciate others. This information was always there, but for the first time it is now visible, I hope you enjoy it.

Continue reading...