24 Sep 2016
Welcome to the Post Status Draft podcast, which you can find on iTunes, Google Play, Stitcher, and via RSS for your favorite podcatcher. Post Status Draft is hosted by Brian Krogsgard and this week's special guest host, Diane Kinney.
Diane is a web professional and solo practitioner based in Florida. She's writing a book with Carrie Dils called Real World Freelancing, and I thought it'd be fun to chat with her about freelancing.
Links and Topics
- Real World Freelancing
- The Versatility Group, Diane's primary business
- How much should a website cost?
- DianeKinney.com, a blog in development. It will focus on business topics, WordPress, and beyond
Yoast SEO Premium gives you 24/7 support from a dedicated support team and extra features such as a redirect manager, tutorial videos and integration with Google Webmaster Tools! Go to yoast.com for more information, and thanks to Yoast for being a Post Status partner
24 Sep 2016 3:05pm GMT
21 Sep 2016
Hey gang, I'm Sophia DeRosia, I'm 14 years old, I'm homeschooled, and I'm here to tell you my WordPress story.
I grew up with WordPress. My entire life my dad, Topher DeRosia, worked with WordPress. At one point a couple years ago he tried to convince me to create a blog, and I had originally said no, but maybe a year or two later Erin Go Blog was born and I started my long journey with WordPress.
My first WordCamp was in Grand Rapids and my family had decided to help out with it. It was awesome, we did that twice and attended once. I believe my first WordCamp that I attended was actually in Chicago which was also, yes, awesome. I met a lot of great people there, they all made me feel welcome even though I was only eleven or twelve at the time.
I have NEVER felt like people in WordPress talk down to me or think of me as a five year old just because I'm a kid.
Last night my mom was asking me some questions for this essay and one of them was "How has WordPress changed you?" And that one took me a minute to answer. I didn't really know how WordPress itself had changed me, but then I thought about the people I had met, those who have taught me, and the support I've always felt. It was the WordPress community that really changed me.
Being a kid in WordPress has definitely benefited me. Being around adults so much I've learned how to talk to them, I'm not afraid to talk to adults or ask for help, and I've made some awesome friends that I know I can count on. I also have some really good job options, whether it's designer, developer, or business. Having my own blog has helped me with writing as well. I may not have a deep passion for it but I certainly like it and may not have known that if I hadn't had a blog.
I've loved seeing how the WordPress community has become more kid friendly. It's a safe, fun environment for kids and it's only becoming more so. I've loved seeing how WordPress has grown and changed over the years I've been using it. So to parents out there who have kids that may be a designer, developer, or business aficionado I recommend WordPress.
WordPress is a fun, easy way to open your kids up to many options for their future.
And to the kids out there who are interested in WordPress, WordCamps aren't the only way to learn it. All over the world they have meetups where you can ask questions and meet some cool people, and there are countless other ways to learn it.
If you think WordPress may be the way you want to go then try it. You don't have to stick with it but at least try it, I guarantee you will make some great friends like I have and learn lots.
Have fun on your adventure!
21 Sep 2016 4:36pm GMT
19 Sep 2016
Welcome to the Post Status Draft podcast, which you can find on iTunes, Google Play, Stitcher, and via RSS for your favorite podcatcher. Post Status Draft is hosted by Joe Hoyle - the CTO of Human Made - and Brian Krogsgard.
In this episode, Joe and Brian discuss WordPress themes, the functionality people put into them, and the challenges that face the WordPress ecosystem with the current state of theming. They also discuss various theme frameworks and how they are setup, common post types and how they can better be supported, and the popularity of page builders.
- What should a theme do?
- Theme vs. Plugin functionality - and mobility potential between themes
- Canonical post types
- Difference between commercial themes and .org distributed free themes
- All-in-one solution "promises"
- Page builders and their role in theming
- Other theme options via the REST API
- On WordPress themes and frameworks
- CSS Zen Garden
- Hybrid Core
- WordPress.com and Jetpack should lead the way to standardizing CPTs
The WP101 Plugin frees your time, enabling you to focus on what you do best, while providing our popular WordPress 101 tutorial videos directly in your client's dashboard. You can even add your own videos! Go to wp101plugin.com for more information, and thanks to WP101 for being a Post Status partner.
19 Sep 2016 5:29pm GMT
14 Sep 2016
Money buys happiness
As a child, I didn't know or care much about adulthood and complexities of life. I wanted to end up with a job that pays well so I could buy an unlimited supply of cartridges for my arcade gaming console. Adulthood was simple!
However, I grew up and like a lot of people realised that things don't work that way. People who get into things just for the money are not the happier ones.
The happier ones really enjoy what they do, the money is co-incidental.
By that logic, I should've learnt things that enabled me to build games on cartridges! However, by this time, my fascination had naturally moved from cartridges to computers. So, I went to college and earned a degree in Computer Engineering.
All the plans of mice and men
Till now my simple plan was working well. Computers were still a recent phenomenon in India. When I enrolled, it looked like a straight path between getting a degree and getting a career.
But, by the time I graduated, I had realised that I had to choose further from a mind-boggling array of technologies and options. I hadn't anticipated the sheer size of the field I had entered. It was like a complex sign up form with too many fields and massive dropdowns!
I didn't have access to professional counselling or guidance that would help me understand my best options.
Asking people around me for advice, just got me more confused. Everyone said the best things about the technologies they worked with. However, talking to seniors and friends helped me shortlist the ones that seemed to offer a lot of growth and excitement (and money, I still wanted my cartridges!). My options were down to Java, PHP, .net or Networking.
One of my other worries then was that if I chose one at the start of my career, I might not be able to switch to something else later. I was confused, in stress and I needed to make one of the most important decisions of my life; standard recipe for feeling lost.
Escapism is easy
There was however an easy way out. I could just postpone this confusion and clutter and study further. In my opinion poll, an MBA had come up too often as a great direction after engineering. All I had to do was pass a couple of qualifying tests for various institutions. For that I needed to study and that was something I had done for the majority of my life.
The plan was simple again and my nerves were calmed. I passed those tests and made it to the next round- the personal interview (PI). One of the colleges that I appeared for the PI was in Pune. There's usually a long wait of at least a month between the interview and selection, since there are a lot of students to be interviewed before they shortlist the successful candidates. All I could do now, was wait.
How I met WordPress
I decided to stay in Pune for the waiting period and started looking for shared apartments. One day while checking a few of them out, I ran into one of my college friends. We became roommates!
I had a lot of time to kill and a roommate who was working as a WordPress Developer (with rtCamp), something that I had never heard about. I couldn't help but look into it. With a little exploration of PHP alongside, I picked it up pretty fast. I had just learnt a new skill that I was confident about, I had even more time till my actual classes would start and this time, there was no pressure. I could get a job for a couple of months.
I sent in my resume to a couple of companies. Obviously, I also applied to rtCamp. Guess what? I got a call from rtCamp, everything went well and I got the job!
In the first few days at rtCamp, I was encouraged to dig into WordPress in detail with self-learning targets.
Picking up the basics of WordPress was easy, but to figure out everything else wasn't.
There weren't as many tutorials and learning materials as there are now. Most of my learning involved checking out the core and it seemed very messy and confusing. I got a lot of help from others, especially from Joshua who was my mentor. In no time, I was building themes, plugins and complete websites. I also realised that I was genuinely enjoying what I was doing.
The irony did not escape me. I came to Pune because I was running away from a decision that I found too difficult to handle. And just like that, I had arrived at my answer. I had a job that I loved and enjoyed. The temporary job that was supposed to fill in time till my MBA started went on for three more years. Goodbye MBA, I was a proud WordPress developer.
At the end of those three years, for various reasons rtCamp and I decided to part ways. I started looking for a job and I saw an opening at BuddyBoss. It seemed like a great opportunity and the folks seemed great. I sent in my application.
Real jobs involve pants
I'm not sure if I can explain this part but let me try. I come from a small town of a third world country where the idea of a respectable IT professional is limited to the clockwork stereotype that works for MNCs whose main function is outsourcing. It was very difficult to explain what remote working was to my family and friends. It was just too alien to them. I'm sure it happens everywhere but in India, it just didn't seem like a "real" job to anyone. When everyone around you raises concerns about a decision, you obviously begin to doubt it.
On the other hand, BuddyBoss seemed like an awesome organisation, with great folks and the things they were building seemed interesting. I had worked a lot with BuddyPress at rtCamp and I had quite enjoyed it. I had never enjoyed 9 to 6 routines and commuting to office everyday. The idea that you could avoid all that and work out of home, at your own timings was just crazy. I couldn't let this opportunity go.
I soon found out first hand what remote working felt like. I didn't have to work from home. I could carry my workplace in my bag. It meant I could work out of a cafeteria, or a friend's place if I wanted. It meant I could visit my hometown and my parents more often. It meant I could travel and see new places while I was working. It also meant I could buy way more games for my PS4 (I was still the boy who loved gaming!).
It wasn't easy; you need more discipline and you need to put in extra efforts compared to just showing up at work everyday and finishing your tasks. But it was worth it. I felt like I had wanted to do this all along.
A place in the world
Let's rewind. Just a few years ago, I was a fresh engineering graduate from a small town, from a middle class Indian family, who was terribly worried about finding a half decent job that could give him a slight chance of happiness.
Since then, I have met and worked with people across the globe that I had never imagined I would do and I haven't even set foot outside India yet. I have been to meetups and WordCamps where I met my colleagues from BuddyBoss and a lot of other amazing people with their own amazing stories.
My daily vocabulary consists of open source, remote work, contribution and community. These weren't concepts that existed for me then. I remember when I submitted my first patch, I really felt a part of something big and exciting. I felt a sense of belonging to this awesome group of helpful people that we call the WordPress community.
To be honest, it wasn't a difficult journey filled with hurdles and my story isn't one of overcoming my circumstances. What I would take away from my story is the extent of transformation that I could achieve thanks to the WordPress community and ecosystem.
The opportunities that WordPress provided me, I don't think I would have found anywhere else.
Not just me, I'm happy to see that more people around me are able to find their own slice of happiness thanks to WordPress.
On one hand, I see people running in a rat race, living in a world that's a cruel, cut-throat competitive arena. I was once planning to get there. However, a whole bunch of strangers across identities and geography, helped me have a meaningful and comfortable life experience instead. I do appreciate the contrast and I sure feel a lot of gratitude.
14 Sep 2016 11:45am GMT
07 Sep 2016
I'm going to open my essay with a bit of self-exposure. These things aren't really secrets, but some context places me into a broader story.
I'm the child of two Army parents, and spent at most two years at any one school, and have several cities play home at various points in my life. I'm a small business owner, and have made my living with WordPress in some form or another for the past eight years. I've had some struggle with feelings of depression for as long as I can remember in my life. I am a gay latino living in Orlando, FL. Those last few points have defined more of my internal life than I'd really care for in the past few months. We'll get to that later.
Now that that's out of the way, let's begin.
I'd been doing web development since high school, where I was fortunate enough to go to a school that taught basic programming. The dot com bubble may have been on the verge of popping, with web companies still riding high, but courses in public schools hadn't yet caught up to that industry.
Throughout high school and college I both worked on websites for myself, friends, and a few paying clients. WordPress had not yet entered my life, and would not until the Spring of 2008 when I wanted to move my personal blog from a manually managed list of links with some basic PHP thrown in to something more robust. It helped that I was tasked with creating a new website for the company that I was working for, despite that being no part of my regular job description, or compensation for that matter.
Fast forward a few years, and in 2011 I discover that the forums that I was going to for help were populated by real people, something I'd come to know as the WordPress community.
This community was tireless, knowledgeable, patient, and generally filled with the can-do attitude that attracts people to roll up their sleeves and get to work. My kind of tribe.
Over the course of five years, a variety of web tech conferences, close to 100 meetups, and around thirty WordCamps and counting, I've built up a group of friends and partners that have been my hangout buddies, sounding board, business associates, and support network all in one.
In those five years I've had a few ups and downs in my life. I'd moved jobs a few times, went from doing side freelance work in the evenings to working for myself full time, uprooting house about five times, and started and stopped a variety of partnerships. I've continued to make new friends, both offline and on, that I would count among my closest confidantes. The WordPress community has been a big driver of my personal, social, and professional life and I am forever grateful for that.
This group of people is as varied as any I could hope for. We're not perfect (no one is), but we're generally more willing to hear out opposing ideas, have frank discussions on topics that would be uncomfortable or unheard of with other groups, and represent a diversity that makes me proud to be a community member.
The things that I might be discriminated for in real life are not only accepted, but are normalized in a way that makes me feel comfortable being myself. This includes being able to share and have shared experiences outside of the expanse of my meatspace network, as well as the safety that comes with the knowledge that I am not alone. I can't be alone when I can commiserate with a group of like-minded loners.
Big Events Stop Time
On 12 June, less than three months ago, life in Orlando was shaken. We became the latest of a list that threatens to grow to every community in America that has to contend with the fallout of a mass shooting. Pointing out that the attack occurred on Latin night at a gay club is apparently overtly political when describing the event as a multi-faceted hate crime and terrorist attack. So be it. Someone tore a portion of my community up and altered the fabric of my life.
My immediate response the day of was to worry about any other young latin gay men that I know that could have been at that club. I was also scrambling for information on volunteer efforts that may or may not have been available. Rumors circulated that the federal ban on blood donations among gay men had been lifted at some blood banks, which later turned out to be false. I was able to stew in outrage that the very people affected would be unable to offer lifesaving help to those who desperately need it, not just in Orlando but across the country.
My outrage turned to anxiety in short order. The story was dissected for weeks, and still frequently comes up in conversation. On more than one occasion I've had to excuse myself from those conversations, turn off the TV, or shut my laptop and walk away. I can't claim any specific trauma, or even a feeling of "that could have been me" as I don't frequent night clubs, but that could be any of us in some way.
Staring into an abyss for too long can make you think that the void is all that exists.
One redeeming moment throughout that ordeal was the outpouring of support from around the world, and our community pulling together to help the families of victims, and to unite in a strength that comes from our network but does not exist in any one person. Over the course of 24 hours I received dozens of calls, texts, tweets, and messages in various other forms asking if I specifically was ok. The majority of those touch points came from members of the WordPress community, who ostensibly owe me nothing and that I may interact with in person once a year at a conference, but who have a kinship that unites us.
Support Can Be Personal Or Shared
I'm reviewing this essay while sitting at my favorite coffeeshop. I've been coming here for twelve years now, almost as long as I've lived in Orlando. The coffee is great, but that's not the only reason that I come in. As soon as I got here the owner greeted me with a hug, and the barista knew exactly how I like my coffee. The owner randomly thanked me for being dependable and a constant that she didn't have to worry about being trouble, as something always comes up when running a small business. That's definitely a sentiment that I can agree with.
While I don't agree with her observation that, "David is always happy" (see prior revelation of lengthy stretches of discouragement and dispiritedness), I understand the need for constants in your life.
Those people that will be there for you, even if you don't always know it.
Whether that's a shoulder to lean on, a mentor when you're stuck, or even a bright smile or online greeting for no reason than to share happiness, the amount of effort required to improve the lives of others can be as simple as the congeniality and cordiality that you would like others to afford to you.
One of my favorite things about WordCamps and WordPress meetups are the number of people that come out without financial compensation just to share their knowledge. I have the most fun helping with a workshop, teaching a group to do something that I myself had taught to me. We all needed some help to get where we are, and I don't consider it an obligation, but an opportunity when I get to help others.
Go Forth and Be A Community
I have an ask with my essay. Be a pillar of support for your community. Not everyone is comfortable with putting themselves out for judgement, but everyone has moments of weakness.
Everyone is walking a path that you may never see when talking with them or following their lives online.
I ask that you make it clear to everyone that you are available if you are needed. You may not think that you can do anything to help, but even a sympathetic ear can be a lifeline that can come at the most important moment of need. I've been kept relatively sane by the community that started as a way to help me scrape together websites, and has become one of the driving factors of my life.
It's only fair to continue paying that forward.
If you're ever in Orlando, come get some coffee with me.
07 Sep 2016 11:00am GMT
06 Sep 2016
In this episode of Post Status Draft, I talk to Pippin Williamson, and we discuss the renewed effort he and his team have made to rejuvenate Restrict Content Pro.
Restrict Content Pro was initially sold without even a dedicated landing page, was successful on Code Canyon for a time, then he let it sputter as he and his team concentrated on Easy Digital Downloads and AffiliateWP.
But Pippin knew that Restrict Content Pro still had more life in it, and he wanted to see it become the kind of product he knew it had the potential to be. So when John Parris - at the time primarily working with Easy Digital Downloads - said he was interested in helping make RCP a proper membership plugin, Pippin jumped on the opportunity.
They have had a good bit of success early on in the attempt to rejuvenate this product:
Our goal was to double or triple the monthly revenue within six months. In March, 2016, RCP brought in $7,700. Last month, July 2016, it brought in $11,400. August, 2016, is estimated to bring in a little over $12,000.
We're at the five month mark and have increased monthly revenue by about 1.5. That's not double yet, but it's getting close. Within another few months, I expect we've surpass $15,000 in monthly sales. Even with just an increase of 1.5, we're still looking at more than $100,000 in annual revenue, and the monthly revenue is higher than it ever was in the past, so we're succeeding.
Our conversation picked up where the blog post left off. We talked about the pain points they encountered during this effort, some of the additional rewards they've had, and how he structures the business more generally to have the same team work on multiple products.
If you are a business owner, or aspire to be one - or if you are curious about managing multiple lines of business at once - then I think you'll really enjoy this episode.
And, if you're a Post Status Club member, Pippin and I recorded a bonus segment, where we discuss hosted WordPress eCommerce, and Pippin shares his opinions on the concept, and whether or not it's something they are considering for Restrict Content Pro and/or Easy Digital Downloads.
Sponsor: Design Palette Pro makes customizing Genesis websites simple. The Design Palette Pro team has integrated with every Genesis child theme, and it's the perfect place to send folks who need custom design, without a custom budget. Go to GenesisDesignPro.com for more information, and thanks to Design Palette Pro for being a Post Status partner.
06 Sep 2016 6:30pm GMT
03 Sep 2016
GoDaddy has acquired ManageWP, the popular website management service. The terms have not been officially disclosed, but it's my understanding that the deal is structured based on a post-earn-out valuation that could change depending on performance. The deal closed on September 1st. GoDaddy declined to comment on the specifics of the financials.
ManageWP was founded in 2011, officially launched in January 2012, and has more than a quarter million websites on their service. Their team of nearly 30 people is headquartered in Serbia, but is capable for remote operations, and the entire team will join GoDaddy. Up to this point, ManageWP was fully self-funded. The company was founded my Vladimir Prelovac, who is coincidentally moving to the US, and will now work from GoDaddy's Sunnyvale office; the company CEO is Ivan Bjelajac.
Speaking to Vladimir, he says the discussions with GoDaddy began several months ago, when they were seeking a potential partnership. The relationship grew from there and transitioned to potential acquisition talks. "We met with their team, and it really blew my mind; the product team, engineering, and leadership really have a fantastic vision." They loved the thought of being able to put ManageWP - a product they strongly believe in - into the hands of millions of people.
Vladimir says that Orion, their recent rebuild of the product, went very well, and they have been profitable since inception. Their 2015 revenue was more than $1 million, and they anticipated new revenue growth with the launch of Orion - prior to the acquisition closing.
ManageWP's recent rebuild
A complete redesign and rebuild of the product - which they've named Orion - was completed and launched on July 12th. The new product included an all new pricing scheme, in addition to the new interface. The new pricing is geared toward power users managing dozens or hundreds of websites, costs $150 per month for between 25 and 100 websites, and additional bundles of 100 sites are $150 each.
People with fewer sites can pay $6 per site per month. The new pricing is confusing, as I covered in more depth in my post about the relaunch, but is cheaper than their previous plans unless a customer has between 5 and 50 websites, or more than 200 websites.
However, the pricing may not be a significant factor under the management of GoDaddy. They very well may choose to make most features of ManageWP free for GoDaddy customers.
The following breakdown of features is based on ManageWP's current pricing:
Current free plan
- Centralized site management for WordPress, plugin, and theme updates
- Team and user management
- Security and performance snapshots
- Google analytics summaries
- WordPress comment management
- Maintenance mode
- Basic client reports
Current paid plan
- Cloud backups and site cloning: $2/month/site for daily and up to $6/month/site for hourly
- White label ManageWP for client installs: $1/month/site
- SEO keyword monitoring and ranking changes: $1/month/site
- Uptime monitor: $1/month/site
- Advanced client reports: $1/month/site
GoDaddy's plans for ManageWP
GoDaddy will surely benefit from the technology ManageWP has spent so much time and energy crafting. What will be more interesting is to see specifically how they integrate it with their GoDaddy Pro program and WordPress hosting plans.
The ManageWP SaaS as it currently exists will be a standalone offering, but GoDaddy will also integrate it into their Pro platform - an all-in-one dashboard for web developers - which is possible because of the way ManageWP was created, with its extensive backend API.
Jeff King, GoDaddy's Vice President of Hosting, told me, "ManageWP is incredibly well respected," and that they do not want to mess with how strong of a brand it is, and will keep it as a standalone app that anyone can use.
They would like to integrate some of the "fantastic" features ManageWP has developed, into, "something that is incredibly useful for [GoDaddy] Pros." They also know that their customers have clients that work on other hosts, and they want to integrate the new features they are working on with many hosting platforms.
They expect to start rolling out ManageWP features within the GoDaddy Pro dashboard in the next couple of months, and hope to have a more complete demo ready for WordCamp US in December.
Current GoDaddy WordPress hosting plans range from $3.99 to $13.99 per month - both are very low prices within the industry, considering what they offer.
GoDaddy hosting has had a bad reputation for a long time, but they have spent tens of millions of dollars on their managed infrastructure and tooling - not to mention efforts to revitalize their brand more generally. Reputable hosting analysis I've seen for the last couple of years consistently conclude that GoDaddy's managed service is a good, "bang for your buck," considering the very low prices.
Speaking with various members of GoDaddy's team, I know that their aims for the future are to build out tools for improved customer experiences, and they feel like they are in the best place they've ever been from a hardware and hosting stack technology standpoint.
They are also putting the finishing touches on an entirely new onboarding experience for WordPress hosting customers who sign up with GoDaddy, to be able to cater websites configured for specific niches based on what the customer tells them they intend to do with the website. Depending on the answers from a new customer, they will pre-install plugins and themes to suit those needs, which could in the future co-align with their plugin partner program, but also includes other plugin and service partnerships, like the deal they have made with the page building plugin Beaver Builder.
This acquisition will offer tremendous exposure for ManageWP, to the more than 14 million GoDaddy customers. WordPress is a huge focus area for GoDaddy, considering its dominance in the CMS landscape, and 25% marketshare of the web generally; the most common thing a new GoDaddy hosting customer will do is to install WordPress, so they have a particularly vested interest in trying to make the experience of running and managing WordPress websites a positive one.
Update: ManageWP and GoDaddy have both made official announcements now. Of note in the ManageWP one, they do confirm that, "GoDaddy is looking to bolster their WordPress hosting with our features, like backups, staging, migration and more," and some of those features will indeed make their way to the GoDaddy platform. Also, they say that 8% of ManageWP customers were on GoDaddy.
03 Sep 2016 5:40pm GMT
31 Aug 2016
My first experience with WordPress came in 2005. I was taking an online theology program and became friends with the director of the course, C. Michael Patton. The course was provided by a popular Christian website, but over time it became necessary to move it to its own site because of limitations in the current sites platform. I don't know what it was at the time, I believe it may have been custom built.
Michael, along with me and several other students of the course searched for the best platforms to build the new site on we played with all the popular ones at the time. We looked at Joomla (Mambo at the time), Drupal, and WordPress. We also chose Moodle for the classroom piece and WordPress for the main site. We built the site and it went over well, the theology program was getting popular and the live chats that we did on Pal Talk were getting a lot of attention. The chat rooms were constantly getting attacked by malicious users who pop in and disrupt the classes, but we also wanted the rooms to stay public as there was a pretty significant Christian presence on there and we were getting many new students.
Michael decided that the best thing to do was to build our own chat platform add all the features that would make teaching and conferencing more efficient. Michael found someone to finance the new system, and I quit my job to work on this full time.
That lead to my first experience with outsourcing work, this was a big project and would require a large team. We ended up hiring an outsourcing company from Noida, India. We got to work building the ultimate conferencing platform.
There were a lot of challenges with the application, many were technical as we had purchased a voice conferencing SDK that could do peer to peer audio and text chat, but it was buggy and would drop users on a regular basis. As many technical issues as we had, we had more with the outsourcing company.
They were very friendly and polite, but there were cultural differences that I didn't understand at the time, and these became a huge obstacle to ever completing the project. My past experience working for a high end financial consulting company that dealt with super wealthy investors, taught me that quality and deadlines were all that mattered, and if I gave a deadline for something or was given one it had to be met no matter what.
Things didn't quite work that way in outsourcing, deadlines were treated as guidelines, and things that seemed like common sense such as how a confirmation box would work became additional features.
Basically, things that I took for granted but didn't provide documentation for were never thought about, no one ever asked about how things like that would work, and the level of frustration built.
After two trips to India to try to get things back on track we finally pulled the project and moved it to the US.
During this same period, it was blatantly obvious that the SDK we were building this on was never going to work as advertised and we would need to write one from scratch. I had an acquaintance from the theology program, a professor at a college in San Francisco who had a small development company there.
Their main developer was a self-proclaimed genius and had done a lot of work in audio compression and had written code for Gibson mixers as well as some networking protocol work so it seemed a perfect fit.
We signed the contract and off we went, or so we thought. After 6 weeks of discussions, emails, and arguing back and forth, the company wanted a percentage of our business to build the conferencing piece. They were claiming that their developer was going to use his custom algorithm to provide the service, but that was not part of the contract so they would need to own a portion of the company.
My guess is that they planned on that from the beginning, but nevertheless, after over $10,000 and a lot of lost time all we received was some documents with the theory behind this magic algorithm and copies of a bunch of downloaded open source communication frameworks.
I can go on about this project, but the main thing is that it ultimately ended in failure, and it still haunts me that we never got this to market.
As difficult and painful as this failure was, I did learn a lot from it, I know that's cliché but it really is true, and what I learned is the point of this post.
WordPress in El Salvador
In 2010 I moved to El Salvador for reasons that are beyond this post and would require way too much of your time. I got married here, and my wife and I started a coffee export business. We did pretty well with that until 2012 when the rust leaf virus hit the country and really hurt the quality and quantity of coffee available for export.
I needed to find a way for us to make a living, and I started scouring the internet for jobs that I could do from here. I found a listing on Craig's List, and landed a job as a project manager for an outsource company based in the US.
Most of the work was in WordPress which I had continued to dabble in by doing sites for friends, and our coffee business, so I was pretty comfortable with the platform. The part that was the challenge of the job was that I was again working with developers' half way around the world, that didn't understand the American culture or clients' perspectives.
My experience with WordPress helped quite a bit because I could jump in and fix things, and finish projects that were incomplete. I built a good reputation with clients many of whom where marketing companies that needed sites built to promote their clients' businesses.
The owner of the company is a bit of an entrepreneur and in 2013 he decided to build a new business setting appointments for real estate agents in the US. I got the job of building a custom portal for his new venture using a couple of the developers that I had been working with over the last year and a half.
This was a fairly large project as it was tied to several APIs and was on an unrealistic deadline, but we managed to get it done and the business was rolling. Ultimately this didn't work because it required telemarketers that were working on commission so they were doing anything to get appointments including booking them when they shouldn't. The real estate agents were mad, the owner of the company was refunding money constantly, and that was the end of it, and the outsourcing company.
I started doing work on my own using the two developers that I had worked with that were very good, and things were going well, but I still had to deal with the time and cultural differences. Waking up to see what progress was made on a project only to hear from the dev that he couldn't do anything because he had some questions, even though we discussed projects and had the details in our online management system.
In 2014 I decided it was time to hire local developers, I was getting busy and I couldn't afford to miss deadlines and I needed more control over my projects. Besides, my goal was always to earn a living here, while treating the local people fairly and not taking advantage of them. I wanted to provide opportunities not just make money.
My wife formed the legal company as I cannot own a company here yet, I've still got to finish the legalization process.
I hired our first two full time developers in the fall of 2014, one front end for themes and templates, and one back end for plugins and API work. While we had plenty of work we didn't exactly hit the ground running.
There was still a cultural adjustment period, and neither were really that familiar with WordPress. This meant a lot of long hours for me as they were learning the ins and out of WordPress, and even more importantly, the importance of detail and meeting deadlines.
The work culture here is a lot like that in most of the world, much more laid back then that in the US, so I had to teach my team to understand what mattered and what didn't to our clients. I had to use the lessons that I learned from my failures in working with outsourcing companies and individuals in the past and use that to build a working environment that is productive for the company but also a place that my workers are happy to come to every day.
There were a lot of challenges that we had to overcome aside from just the cultural differences and approaches. The employment laws here were a surprise that I learned on what appeared to be a little later than a need to know basis.
All employees get 15 days' paid vacation from year one, and they get 15% of their monthly salary in addition to their regular pay for that time. They also get an annual bonus that is 50% of their monthly salary. And then there is indemnizacion which is basically unemployment, except here the company pays one month's salary for every year an employee works, you have the option of paying this annually, or all at once if you fire an employee.
These were things I learned after agreeing to pay my developers their asking salaries.
If you're going to start an outsourcing company in a foreign country, learn their laws first!
Other issues that I learned from my first outsourced project is that other countries have their own holiday schedules. I had Hindus on projects that had some holidays, Muslims that had other holidays, and clients that didn't care about either. The same thing here, El Salvador's' Independence Day is not July 4th, their Labor Day is not the first Monday of Sept. and they have a lot of holidays based on the Catholicism.
These are all issues we work around by managing our time and projects, and a lot of extra work on my part during these holidays. My team works most US holidays, but that would be the best time for them to be off, and when I would like to be off.
We currently have four full-time developers and we keep everyone fairly busy, but I also care about my team and we try to manage our projects so that no one needs to work overtime, or even the half days on Saturdays that they are contracted for. So far I have only needed to have them work on Saturdays twice in the two years since we started here, but they all understand that if deadlines are in danger of not being met we will work Saturdays. That's a little motivation that seems to be working.
I also realize that I am not going to get a lot of production out of a new developer for a couple months. Most people here don't know WordPress very well, or the other platforms that we work on, so we train them, give them small things to do and time to learn. They need to learn not only how to do the actual programming, but how to embrace WordPress as an application development platform or framework. In the beginning they all want to work on their favorite MVC framework for everything, but when they really learn the power and clarity of the platform they get hooked and productions shoots up.
I never wait until I have too much work to hire someone new because I know the beginning will be slow.
If I need to scale in a hurry, I still have relationships with my oversees guys and I'll give them a project to keep moving.
Outsourcing On The Other Side
There is a lot to running an outsourcing company from a foreign country, and I have a big advantage having spent most of my life working in the Northeastern US and understanding what clients expect. One of the main things I do is to manage those expectations to create realistic requirements, and realistic deadlines. We meet those deadlines or we work extra, though we have hardly ever needed to do that.
I believe the failure of a lot of outsource projects, companies, and freelancers is the lack of clear expectations in the beginning.
Much like most of the world, the people here put a lot of importance on being agreeable and polite when discussing projects or really anything. That sounds good on the surface but it leads to unmet goals and cranky clients. If you're working with US clients it's far better to be honest about deadlines, skillsets, etc. than to just say yes to everything and have it fall apart.
My team has learned that it's better to tell me the reality than just what I want to hear, if they're struggling with something they come to me and I guide them, sometimes to one of the other developers, sometimes I do it myself, but the key is that they are comfortable in knowing that none of us knows everything. Salvadorans are very proud people so this is a huge accomplishment.
I know this is a long post and maybe I ramble a bit, but if you're living in a foreign country and running or considering running an outsource business I hope that some of my experiences will provide a little guidance to help you along. Having been on both sides of the outsourcing world has really helped me to understand what clients want, and how to help my team deliver it.
31 Aug 2016 12:00pm GMT
30 Aug 2016
Welcome to the Post Status Draft podcast, which you can find on iTunes, Google Play, Stitcher, and via RSS for your favorite podcatcher. Post Status Draft is hosted by Joe Hoyle - the CTO of Human Made - and Brian Krogsgard.
In this episode, Joe and Brian talk about various third party publishing apps available and how they work with WordPress. They dig into apps that currently exist, how the connect to WordPress, how the future of WordPress could improve the third party ecosystem, and many of the challenges that must be tackled when interacting with WordPress as a third party application.
Apps we discussed
- WordPress mobile apps
- Windows Live Writer
- Evernote to WordPress Zapier
- iA Writer
- OneNote to WordPress Zapier
Sponsor: Delicious Brains
Today's show is sponsored by Delicious Brains. WP Migrate DB Pro makes moving and copying databases simple. They are also working on an exciting new project right now for merging databases, called Mergebot. Go to Mergebot.com for updates on that, and deliciousbrains.com for more information on WPMigrate DB Pro, and thanks to the team at Delicious Brains for being a Post Status partner.
30 Aug 2016 6:50pm GMT
26 Aug 2016
Hi there, WordPress users! Version 6.4 of the WordPress for iOS app is now available in the App Store.
iPad Keyboard Shortcuts. Press down the command key on your external keyboard to see a list of available shortcuts in the main screen and in the post editor.
Share Media. Our sharing extension now supports media, too!
People Management. You can now manage your site's users and roles using your mobile device.
Search in the Reader. The Reader now has search capability and autocompletes suggestions.
Improved Gestures. Full screen image previews can be dismissed with a swanky flick/toss gesture.
Bugs Squashed. A new homemade bug spray formula has allowed us to squash many uninvited guests.
And much more! You can see the full list of changes here.
Thanks to all of the contributors who worked on this release:
@aerych, @astralbodies, @claudiosmweb, @diegoreymendez, @frosty, @jleandroperez, @koke, @kurzee, @kwonye, @oguzkocer, @sendhil, @SergioEstevao.
You can track the development progress for the next update by visiting our 6.5 milestone on GitHub. Until next time!
26 Aug 2016 12:27pm GMT
Hello WordPress users! Version 5.7 of the WordPress for Android app is now available in the Google Play Store.
New "Plans" section in My Site
Starting with 5.7, you can see your current WordPress.com plan and learn more about the benefits we offer in other plans.
Manage your followers and viewers from the "People Management" screen
You're now able to use the app to invite new Administrators, Editors, Authors or Contributors to your site, or remove unwanted followers.
Version 5.7 also comes with a few other changes and fixes:
- Reader tweaks in the Post Detail screen for tablets.
- Keeps the "View Site" link visible for newly created users.
- Fixes a rare crash when creating a new account.
You can track our development progress for the next release by visiting our 5.8 milestone on GitHub.
Do you like keeping up with what's new in the app? Do you enjoy testing new stuff before anyone else? Our testers have access to beta versions with updates shipped directly through Google Play. The beta versions may have new features, new fixes - and possibly new bugs! Testers make it possible for us to improve the overall app experience, and offer us invaluable development feedback.
Want to become a tester? Opt-in!
26 Aug 2016 11:33am GMT
24 Aug 2016
I'm a minority amongst minorities, but it doesn't matter.
Let's get to know each other
Hi, I'm Uriahs Victor and I'm a Carib - bean from the island of St. Lucia. How many Black Developers do you know in the WordPress Community? 5? 20? How many of them are from the Caribbean? How many raised up in places like this:
I chose to write on this topic in hopes that there's someone else like me reading this article someday who's living in an area where it may seem like there aren't many career paths.
It doesn't matter where in the world you are or your complexion; anyone could code.
How my passion for programming began
I was fortunately raised with both parents in a community on my island called Fond St. Jacques which is a part of a bigger town called Soufriere. I grew up doing everything a typical adolescent from my community would be doing: playing football, playing cricket and going to work on my parents farm and occasionally on other farms to earn some money to burn through by drinking with friends ( don't think about it too hard ) and partying.
One day I came home to a used computer setup in my room and was extremely ecstatic with the idea that my family now owned one. I spent hours upon hours on this computer messing around with paint but mostly playing Pinball, there was no internet in my community at the time but I was very intrigued by video games, once I got my first taste of unrestricted internet access several months after; my love for video games grew, I spent time reading about them but more time playing them and at that time I had decided that I wanted to be a Game Designer.
If being a Programmer from a rural community out of the Caribbean sounds different (not impossible) looking back at it now then just imagine how it sounded saying I wanted to be a Game Designer when someone asked me. I spent years with this goal set, I spent days reading about game designing but I always felt lacking, I believed there was always 1 skill Game Designers needed that I did not have and that was being able to draw/design.
In 2010 life was pretty easy going, I was 15 and still had not done any piece of Web or Desktop Development coding. My Secondary schooling was going pretty good, I was always the top performing IT student so this brought me comfort as I knew I would soon be writing the "CXC" exams soon.
On October 28th 2010 I woke up during the night to the sound of heavy rains, I looked through one of the windows of my home at the time and saw the trees around my house swaying pretty normal, or so I thought. The morning of October 29 I woke up to the sound of friends saying "Uriahs your mom shop is gone" in our second language (French Creole), this language naturally sounds a bit harsh when used to say various things so I thought they were pulling some kind of prank on me. What I saw after heading to the balcony where my friends were changed my life.
Some Damage done to my hometown (more images could be seen by googling "Hurricane Tomas Fond St. Jacques Damage"
My friends were right, my mom's shop where she sold snacks and food items which generated most of the income for my schooling had completely vanished, no trace of it was left, like it was never there.
This storm had done so much damage that there was no way for anyone from my community to get to school
Roads were completely sliced through by water and eventually I had to move out of my community to live in Soufriere for ease of travelling to school.
At age 16 I still wanted to be a Game Designer, I had spent the previous 5 years excelling in Information Technology at my Secondary school but had never done any piece of programming, the damages of Hurricane Tomas were still evident and I was still shaken up at how my life had changed, I was no longer living with my parents in my hometown, everything I would not wish for a teenager.
To this day the damage done to my home town is still visible:
This is the exact same area from one of the previous images. These pictures were taken August 8th 2016 when I visited.
In the Caribbean, at the end of your 5 years of Secondary schooling you are required to write an exam called "CXC" if you wish to pursue higher education. For my academic year we never finished our Information Technology syllabus which touched a bit on Pascal programming, so when it came to writing the Information Technology exam every category was aced, but I failed the programming section, even then I still wanted to be a Game Designer and had not yet grown any affection for coding.
In 2011 I started schooling at Sir Arthur Lewis Community College (SALCC) pursuing an Associate Degree in Computer Systems Engineering which was the only option available which dealt with Technology at that college (there are only two colleges on my island). This was a 2 year degree where the first year students are introduced to both the Hardware and Software side of computing then in the second year choose the path they wish to pursue. This was also around the time I first came across WordPress while fiddling on the internet and making the mistake of not looking more into what it really was.
One year into my Computer Engineering program it finally came the time to choose my path in IT and of course I chose the Software path because I believed if I wanted to be a Game Designer then this was the best path. That remaining year was when I really started to build up my affection for code, there was only one course in the software path that actually dealt with any type of code to some extent called "Programming Methodology". Programming Methodology was a course tailored to teach you the very basics of programming such as Loops, IF and ELSE statements, Variables and small exercises to help you put those into practice. This entire Programming Methodology course was done with VB6 examples in Visual Studio 2006 so I was not taught a single line of Web Development code.
At this college every student who does Computer Systems Engineering is required to present a "Technical Project" in a typed and physical presentation form, it's purpose is to show what you've picked up from the program over the 2 years; without receiving a pass on this Technical Project students would not be awarded their Degree and would need to redo the project until they succeeded. It may sound a bit brutal but I believe this is a good final test and I hope they don't change this procedure.
I had known about this requirement for a very long time so I decided to build a video game for my technical project, I knew I could not draw so I decided to use a RPG Maker and ponder ways I could get a pass by presenting to the graders a video game which I did not physically design any of the characters or coded them in. I eventually decided to create an Educational video game and touch on the topic of teaching through entertainment (Edutainment). There was this one course called Data Communications that students always seem to have trouble passing so I thought "Hey, maybe I should create a game showing some basics of Data Communications".
During my time learning how to use this RPG Maker and creating this game I found myself using a lot of the logic operators I had learnt about in Programming Methodology, this was all good because in my presentation I could have shown that though I used a RPG Maker, there was actually a lot of programming logic going on under the hood and that I was actually coding.
While working on this project my love for code grew, I was having fun.
By the time I had finished creating this game my passion had already broken down from Game Designing to coding. Thankfully, I was successful with the game which I called "EduCom" and was able to finish college in a perfect 2 years (woohoo!), you can download EduCom here: Click here
Fast forward a few months and there I was as an intern from college at a web agency understudying some colleagues who didn't build desktop apps. Keep in mind that at college I had learnt VB6 to the point where I could have switched over to self-learn VB.NET and I was now sitting in a web agency learning web development, well guess what? I still loved it. I went home each day and practiced it, I used http://codeacademy.com (which now redirects to codecademy.com) to learn HTML and CSS and I was even good with jQuery at some point! Life was great, at that time getting employed by the agency was not a big deal for me, I just loved coming to work and understudying the other Developers.
A shock came to me one day when I was told that I had went to the wrong company for my internship.
I remember to this day clearly being told that I was supposed to carry out my internship at this web agency but now I was being told that I went the wrong place. I really liked where I currently was but I actually needed to leave for the company which I was registered to in the school records, I still wonder what would have happened if I had never corrected that mistake.
With 2 months left out of the 3 month long internship program, I was at a new company with very little excitement in me. The silver lining came when I arrived and noticed that there was this 1 developer who was responsible for both building and maintaining desktop applications and websites, two things I really liked doing, so I quickly gravitated towards him and in no time we became friends. I was awed by him and I could safely say just like the previous guys at the web agency that he played a part in me not forgetting my true passion for coding. I say this because at this newly assigned company I became an IT Technician, doing everything Techs usually do such as fixing printers, troubleshooting WIFI networks, fixing computers and even building them too, but even after spending the day as an IT Technician I often spent the night as a Developer. I never stopped coding, I often came home fatigued from all the hands on tech work but I pushed myself through CodeCademy's exercises, I spent time working in Visual Studio building simple apps that did nothing useful but I still liked the feeling of seeing my code come to life.
At the ending of my internship I had become such a great IT Technician that I got the job. I was excited because heck, who wouldn't be excited to get a job straight out of college in a country with high unemployment rate?
Reality Is Cruel; Immerse Yourself - Uriahs Victor
On September 3rd 2013; two weeks before my birthday was my first day officially on the job. My day was going by normal, until I got a call from my sister, crying. My father had lost his life because of a mishap while working on our family farm. It took me a while to realize what had happened, I didn't want to believe it. Might sound strange to you, but video games again came up and helped me through.
No matter where you are at right now, don't stop doing what you truly love.
The day came when my Developer friend at the company decided it was time for him to leave the job for greater things, and guess who offered to be the new Developer? That's right, me. With some help from my colleague I got familiar with the different apps and websites the company had under their management, again I came across WordPress but I still did not know much about it on a coding stand point, I spent time at home getting familiar with its backend but what was more unusual to me was its code. I knew how to build static websites with HTML and CSS but I did not know much PHP at the time so I had to quickly learn a fair level of PHP to find myself around and also learn different things about WordPress such as plugins and backing up… enough to fill in my colleague's shoes as quickly as I could before he was gone.
I am not happy at my job!
Two years into the job and things had begun to turn sour for me, I was not happy at my job. One of the main reasons was that I felt underappreciated and overlooked. Though I was the new Developer for the company they never got over the fact that I was also pretty good with computers, so I was often asked to stop whatever software related tasks I was doing to head over to some client's business to check out a faulty computer or things of that nature. I was unhappy, I felt like I this company did not value the software side of their business nearly as much as the hardware side, couple that with the fact that I was still being paid the same salary as when I was only an IT tech, to now being in charge of the company's software and still finding myself doing IT Technician related tasks and then being asked by my employer "Why can't you work on the client apps at home?", there was no overtime pay offered in my contract, so I used my nights to better myself and also to rest my mind.
I was still 20 but soon to be 21 at the time and I felt overworked. Having to condition your brain to work on VB.NET apps some of which were not built by yourself requires time to be spent getting familiar with the source code, but often minutes after I would have to recondition my brain to think of reasons why a computer has a certain issue, this was like P90X on the brain, it was a daily thing and I began disliking as weeks and months went by. Time passed and things became sourer, I began contemplating my resignation; I did not like the way I was being treated and it had begun to show, I often only found joy when practicing my code at home, this late night practicing also often caused me to arrive late the next day for work which I compensated for by leaving at late hours.
If it doesn't come bursting out of you, don't do it.
The day came when I decided to resign from my job but something inside me said "Uriahs, give it another shot", that voice was the bad voice, I was let go from the job the same day I planned to resign.
Is Karma real?
So there I was, a 21 year old who had no backup plan and no job applications out in the wild but I was happy. I had felt relief that I did not have to deal with working in an environment I didn't like. I was told by my past colleagues that my replacement had come in the next day and I thought to myself that maybe this company was contemplating letting me go just as long as I was contemplating leaving (lol). Well, let's just say this replacement only lasted 3 days on the Job then quit after messing up one of the company's high end clients website, a news publishing website: http://stluciastar.com/ built on WordPress which I had been maintaining and making code modifications for when asked.
I don't know why the company thought it was ok to call me 3 days after letting me go, asking for my "help" in fixing whatever problem a replacement Developer (who I believe shortly quit after the incident) had done, but after consulting with the WordPress community, it was made clear to me that I should either charge for my services or decline; heck, I was unemployed and still had rent and bills to pay but I instead eventually declined.
A new beginning
Weeks went by with me just getting used to being out of an office type job to being home, I had been living alone since I had gotten the past job so I also had to get used to having less people around me. I took that time to learn more about WordPress, Udemy pricing scheme didn't change yet so I bought myself a few WordPress Development courses for $10USD each when they came on sale, such as: WordPress Theme Development with Bootstrap by Brad Hussey, in that one course I learnt more about WordPress than I had learnt in all my time working in my last job(wut?). I began doing freelance work online and locally, there were not many other options on my island to work in software so I started questioning whether I should be sending out applications for new jobs or just do full time freelancing; I had my doubts about the few companies there were, and I actually enjoyed working from home. Time passed and I fell more and more in love with WordPress, I watched tutorials and googled away trying to pick up knowledge, the WordPress codex which I once found intimidating began to look sexy.
Once I felt I had gathered enough knowledge on WordPress, I thought of a plugin idea and began working on it. I had no immediate help except for the WordPress community populating the codex with all the useful information. I spent a few weeks working none stop on this plugin which I thought did a pretty good task which was to Inform buyers of a downloadable WooCommerce product that there is an update for that product after the shop owner has marked it as updated. After completing the plugin I was ready to submit to the WordPress repository, it brought me joy when I got the e-mail letting me know that the plugin was accepted to the WordPress repository! I love open source so just having a plugin for WordPress which could at least help some people made me feel warm inside.
Pirate of the Caribbean
Around that time something equally interesting happened. I had completed a short video chat with Ionut and Sabina from ThemeIsle and found out that I would be part of their WordPress support team for their themes and plugins! Obviously I was happy, I would be amongst like minded individuals, a team who appreciates WordPress as much as I do, a team I could learn from! All without needing to fly over to Romania!
Let's have a drink
One day while performing a random Google search for my plugin I saw in the search results a link to WPTavern, I curiously clicked on the link and saw that my plugin (TLD WooCommerce Downloadable Product Update Emails) had been picked as one of the top 3 plugins of the week on WPTavern, my very first plugin and it was mentioned on WPTavern?!
In under 1 year I have achieved more than I did in the recent years. It wasn't easy, many nights were spent awake googling away, many parties were missed so I could save and be able to pay bills. If you like something, do it!
Programming is for anyone and when I notice someone from my island or the Caribbean show interest in coding I never refrain from encouraging them.
I am currently 21 and will be 22 next month, I still have lots to learn, I still have lots to give back to the WordPress community and open-source community on a whole, I currently aid small businesses and non-profits on my Island grow their brand with WordPress. I have plugins and plugin ideas in the pipeline which I am currently not able to complete, but through learning and growing my skills I eventually will.
It doesn't matter which part of the world you grew up in, what challenges you've faced, nor does it matter your race, all it takes is the internet, passion, patience, practice and of course prayer.
WordPress has been good to me, if it has been good to you, then helping the WordPress Community in any way possible is the best we could all do.
24 Aug 2016 12:00pm GMT
23 Aug 2016
The current state of affairs
In 2016, WordPress is far from the only choice for a new website. In fact, website owners have enjoyed a plethora of options (hosted and self-hosted) for many years. WordPress has remained the juggernaut solution for self-hosted websites, with 25% marketshare of the total web, and as the mainstay CMS for small-to-medium businesses with small or low budgets.
Amongst two groups - large institutions that need high scalability, and the ever-tinkering developer crowd - another option is trending positively: the static site generator, also known as a flat-file CMS.
Don't get me wrong - the WordPress install base is huge, and the threat posed by static site generators is small. But it's growing. Post Status editor Brian Krogsgard polled developers prior to Pressnomics, to assess the threat level posed by various CMSs and publishing platforms; Medium and static site generators were considered more of a threat than any others:
He also wrote in a newsletter to members in November, 2015, "Didn't I just mention about the appeal of static sites? I really think they're a big top-end threat," referring to the launch of vets.gov. Earlier that month, Smashing Magazine christened them the next big thing. A number of high profile websites use static site generators, from Vox Media to Barack Obama.
A spate of flat-file CMS options have become strong contenders: GitHub's Jekyll is by far the most popular, but it's joined by Grav, Couch, Pico, and more. You can even host your static site on GitHub Pages for free, and they're happy to let you use a custom domain.
Historical WordPress advantages
The continuing appeal of WordPress has been fourfold:
- The ability to get started very cheaply, without a monthly fee on top of hosting costs.
- The liberty to use a custom domain name.
- A robust ecosystem that provides thousands of free or inexpensive themes and plugins.
- One-step installation facilitated by mainstream web hosts' embrace of WordPress.
Since Jekyll and its ilk are mostly open-source, advantage #1 is wiped out. GitHub Pages knocks out advantage #2. WordPress retains the upper hand regarding #3 and #4. Younger projects have a long way to go before they can rival the WordPress community, and they're still focused on serving fellow developers rather than everyday consumers. Until that changes, big web hosts won't bother to enable ultra-easy installation.
Modern WordPress drawbacks
WordPress does have legitimate downsides, especially if you're already a competent web developer or you're focused on the highest levels of technical performance.
Site speed is ever more important in an age of social distribution and mobile browsing, and made more difficult considering site assets and page weights seem to be constantly getting larger. WordPress can be difficult to scale for high levels of traffic, and certain site architecture decisions can get developers in trouble.
High scalability and smart web performance management with WordPress requires significant development expertise or more expensive managed hosting partners, especially for complex WordPress installs; whereas the inherently static nature of static site generators makes scalability more trivial.
Finally, security is a concern for some people that choose static site generators. WordPress has opportunities for user input that static site generators do not. It is also a natural target of hackers, simply due to its popularity. And static site generators are almost completely locally stored - aside from the output itself - whereas WordPress (potentially outdated, along with underlying themes and plugins) is stored on the server, more vulnerable to attacks.
Why WordPress is still winning
As I noted amongst its historical advantages, WordPress has an unparalleled ecosystem of plugins, add-ons, and extensions. (For comparison, the Jekyll Plugins website only lists fifty-two options at the time of writing.) It's also relatively easy for non-technical people to install and use WordPress, in part because mainstream hosting companies put in the effort to make it easy, but even prior to such conveniences WordPress boasted, "the famous 5-minute install." And static site generators are just not as powerful as traditional content management systems, especially in regard to user input.
Among the static site generators, Jekyll in particular is working toward feature parity, but it will take a long time. Current ease-of-use tools like Prose, a content editor that integrates with GitHub, and CloudCannon's Jekyll GUI, which aims to help developers collaborate with clients, are in their infancy in terms of adoption and are still finicky to use.
It can be tempting to look longingly at the growing ecosystem around static site generators. It's also easy to forget just how much you get "for free" with built-in WordPress functionality. Static site generators definitely play a role in the modern web, and can be a great choice for certain types of websites. But no static site generator signals the end for WordPress and its continuously strong community.
The future - what should you do?
Since you're reading Post Status, it seems fair to assume that you're part of the WordPress ecosystem, and very likely earn a living from it. Should you be panicking? No, for all the reasons I laid out.
But any wise professional keeps an eye on the future of their industry. We are seeing a trend, and over time Jekyll and its siblings will gain more marketshare. It's probably worth your time to try out a few flat-file CMS options, get familiar with how to use and customize them, and perhaps consider what WordPress itself can learn from them.
23 Aug 2016 8:23pm GMT
17 Aug 2016
WordPress 4.6, "Pepper", has been released. It's named, as always, after a famous jazz musician, and this release is named after Park Frederick "Pepper" Adams III, a baritone saxophonist and jazz composer.
The Release Lead for WordPress 4.6 was Dominik Schilling, known often as Ocean90, and the Deputy Release Lead was Garth Mortensen. There were 272 total contributors to this release. According to Aaron Jorbin, 85 of these contributors were first timers, so congratulations to all new WordPress contributors!
For this release, we did a special episode of the Post Status Draft podcast, which you can find on iTunes, Google Play, Stitcher, and via RSS for your favorite podcatcher. Post Status Draft is hosted by Joe Hoyle - the CTO of Human Made - and me, Brian Krogsgard.
In this episode, Joe and I discuss WordPress 4.6 and deep dive on a few of its features.
About WordPress 4.6
Here's a video overview of WordPress 4.6:
Overall, this was a planned iterative release from the beginning, with a goal to fix as many longstanding bugs as possible, and to refine existing features, rather than to focus on a lot of brand new features.
Folks have been clamoring for a release like this for a long time, and in most respects 4.6 delivered. According to Trac, 489 tickets were closed, across 53 components, during the 4.6 milestone. Also, it shipped exactly on time.
User facing features
WordPress 4.6 has a few user facing features that aren't huge functional changes, but nice interface enhancements.
No more bleak screen of sadness, as the team working on this termed it. The plugin installation, updates, and delete process is much smoother than it used to be. There's a nice video of this from the initial proposal:
This was the second release where "shiny updates" features were a focus. To see some under the hood considerations for developers, there's more information on that from Pascal Birchler.
WordPress is leaving Open Sans, which was introduced with the "MP6" admin overhaul of WordPress 3.8. You may have seen GitHub's recent change to native fonts. It's definitely a trend lately. Matt Miklic explains the switch from Open Sans to native system fonts in the WordPress admin.
The declaration of fonts when using system fonts has a good bit of science behind it, and may be useful for those of you who wish to do something similar for your own projects. Marcin Wichary has a really interesting post describing Medium's process when they made the switch.
And if you're curious, the new declaration is this:
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
Inline link checker
WordPress will now automatically detect improperly formatted links, as you write. While this doesn't check the validity of any properly written URL, it will ensure the URL you add in an
href is properly formatted. So, it will catch if you accidentally type something like
http:/w.org and outline it in red for you to fix.
If you copy and past a URL into the link editor, but don't include
http:// at all (I do this a bunch), it auto detects and inserts it for you.
Browser content caching
Yet more efforts have been made to always ensure that you do not lose your content as you write. I followed the steps in the Trac ticket to see exactly what happens here.
So I typed the first sentence below, saved a draft, then typed the second paragraph:
What if I start typing and save a draft?
Then start typing some more, because that's what bloggers do. And I chill here for a few seconds, then stupidly just reload this page?
Then I reloaded the page without saving again, and got this notice:
And just like that, the content is back, because it was saved in the browser's local storage. Pretty cool.
There are several important developer centric features that you should know about.
Enhanced meta data registration
This is a significant aid to the (pending) REST API meta handling, but also improves other meta data functionality. The
register_meta() function allows developers to tell WordPress more about what specific meta data is designed to do. In WordPress 4.6, the arguments for this function have changed, enabling more information to be communicated in the third parameter, which is now an array.
show_in_rest key, an experimental key (until the API endpoint goes in), finally solves the issue for the REST API for knowing when to include meta data in the API's default responses. It's one step of a few that need to be made to better support meta for the API, but it's a good step forward.
For plugin developers not using
register_meta(), be sure to learn more about it and the advantages, as there are quite a few. Jeremy Felt describes how to use
register_meta() on Make Core.
Translation priorities and changes
WordPress will now default to the translations from Translate.WordPress.org community translations, then pull from theme or plugin translation files. A procedure called "just-in-time" translation loading will be utilized, and for plugins and themes distributed through the official repository,
load_theme_textdomain() no longer need to be used.
Commercial plugin authors will still largely follow the same internationalization procedures they always have.
In a related note, and quite impressively, WordPress 4.6 shipped 100% translated in 50+ languages.
Joe helped teach me more about resource hints on the podcast, and Aaron did a much better job detailing resource hints than I could, in his excellent field guide:
Resource Hints is a rather new W3C specification that "defines the
prerenderrelationships of the HTML Link Element (
<link>)". These can be used to assist the browser in the decision process of which origins it should connect to, and which resources it should fetch and preprocess to improve page performance.
In 4.6, WordPress adds an API to register and use resource hints. The relevant ticket is #34292.
Developers can use the
wp_resource_hintsfilter to add custom domains and URLs for
prerender. One needs to be careful to not add too many resource hints as they could quite easily negatively impact performance, especially on mobile.
Resource hints can be very useful for certain situations, and it's a technique that I personally need to explore further. Those of you doing advanced performance-driven development will surely be excited about support for this in WordPress.
The Customize API continues to evolve and improve, and Nick Halsey walks through new developer-focused features and changes to the API for WordPress 4.6. Also quite notably, Weston Ruter describes new APIs for both settings validation and notification management in the customizer.
Other developer-centric changes
Multisite changes: Jeremy Felt describes
WP_Network_Query, and goes over a few new functions and filters.
There is now a persistent comment cache, allowing more performant comment loading functionality. Rachel Baker, the comments component maintainer, explains further.
The WordPress HTTP API now uses the Requests library, as Ryan McCue describes.
Aaron Jorbin describes some of the lower level WordPress loading priorities and defaults that have changed. He also describes how WP CLI and core have reconciled their differences in
wp-settings.php, which makes backward compatability for WP CLI possible now.
Boone Gorges describes the introduction of
WP_Term_Query. He's the term whisperer. As Joe and I discuss in the podcast, these sorts of changes make for better consistency in WordPress, and provide an improved developer experience.
WordPress 4.6 is the result of hundreds of community members. You can find their names and links to their profiles on the official release post.
Also check out the official 4.6 Codex page that has a lot of handy information and links to source Trac tickets. You can see all closed tickets from 4.6 on the Trac milestone. View all new functions, classes, methods, and hooks on the official Developer Reference. And learn more about some of what I discuss above, and other items, on the ever-helpful field guide.
For the record, WordPress 4.5 was downloaded more than 45 million times. You can track 4.6 downloads on the page dedicated to the task.
Thank you to everyone who contributed to WordPress 4.6! I hope you have a or to celebrate if that's your kind of thing, or otherwise your efforts.
Podcast Sponsor: Prospress
Prospress exists to make the world's best eCommerce platform a little better, because they want to help entrepreneurs prosper with WordPress. They are the creators of WooCommerce Subscriptions, PayPal Digital Goods, and One Page Checkout. Check them out at Prospress.com.
17 Aug 2016 5:21pm GMT
My grandad always used to say "živi se usput", which translates from Serbian into "life happens while you are making plans". Everyone is in a rush, planning their next weekend, holiday, career path, children…. Of course you have to exercise, stay fit, look good, relentless pressure is the way of life today. I happen to be one of those people who like making plans and setting goals. However, WordPress was never in any of my plans, I happen to stumble upon it. A friend of mine, Emma, a Cambridge philosophy graduate, who spends her time teaching circus arts, said "I stumble through life in general - I think the best people do it". I think there is a lot of truth in this, sometimes the best things happen while you are busy making other plans. (This sounds a bit like an infomercial!)
When I spoke to Topher about this essay, he said to me "oh so your story is also about taking chances". I never thought of my past actions as taking chances; I am one of those people who jump with their eyes closed, rather than take small calculated steps. But, I will tell you how and why I took a chance with WordPress.
Before WordPress (BWP)
BWP starts for me 6 months ago, because I have only been a WordPresser for the second part of 2016. I am a UCL graduate, I studied Italian and German language and literature. I have always been interested in reading, art, history of art and generally interested in understanding people. I used to go to the National Art Gallery in London with my dad and we would cover an era each time talking about how art changed, how the paintings happen to catch the change in culture and belief system of society. I continued to dedicate myself to art and language throughout my academic life, I wrote my dissertation in German, on an expressionist artist Oskar Kokoschka and for my MA I translated a black comedy in Italian that looks at social strata. I went on to study and work as a conference interpreter working in all four of my languages and getting lots of opportunities to meet different and interesting people.
I never imagined myself as a 60-hour-workweek girl in an office typing away on my computer. I planned my career to go a different way. I went to Italy to help create and promote a new teaching method called "edutainment", teaching through entertainment. That's where I was first introduced to marketing, localization and writing for an online audience.
BWP And My Sports Career
Apart from being a quintessential bookworm, I am also a covert adrenaline junkie. This actually ties in well with all of my studies. Sports and studies have one common denominator - it takes a lot of discipline for both. When I was 3 years old I started rollerblading, my mother found the smallest rollerblades (ever made) and bought them for me. I also played ice hockey in a mixed team and in 2014 we won the national championship in the UK. I am a qualified volleyball coach and ski instructor. Currently my sport obsession is with aerial gymnastics, and acro yoga. I like challenging myself both physically and mentally.
Never Stop Learning
In a recent interview with Tony Cecala, which was actually my first official interview for ManageWP, Tony said "never stop learning", and this stuck with me, because I realized that the most important thing for me in whatever I do is to keep learning something new. At school I enjoyed learning new things, I enjoy trying out new sports and testing myself, and the same applies to work. Any job you do will have some repetitive aspect, and that is understandable, but it's important for me to be in a position that embraces personal growth. That's what WordPress has offered me, a combination of learning and support.
My Road To WordPress
I was first introduced to WordPress, when I moved back home to Serbia. I applied to work at ManageWP, as "what the hell", maybe there is a small chance they will call me back. My team lead happens to also play ice hockey and the first interview was us discussing hockey teams and player positions. Shortly after (they did test my skillset), I started working as a PR & Digital Marketer. As part of the Growth team my job was to get acquainted with the WordPress community, introduce people to our product through online and offline methods, write content and establish myself as a product evangelist. I worked in our Customer Happiness Team as well, helping communicate with our customers on a daily basis.
WordPress was taking a chance for me, because I never thought of myself as an IT type. My boyfriend on the other hand is a software engineer, and so instead of being enthused by his job, I was always put off. He spends hours a day in front of a computer looking at strange symbols (that's PHP I hear). Now, ironically I can understand a large part of PHP, no thanks to my boyfriend, but to my ManageWP colleagues.
WordPress is actually for everyone, and that's what's fantastic about it.
After WordPress (AWP)
Since being at ManageWP and part of the WordPress world, a lot has changed. I now have an online voice. I set up a blog, I was published on Tech.co, FishingBooker, Meks Themes, Devana Tech, Freelancermap and ManageWP. I also spoke at WordCamp Belgrade and it turned out to be one of the most popular talks of the day, I am speaking at WordCamp Split come September. On top of that I have been given an incredible opportunity to be part of the 2017 WCEU Paris organization team. WordPress has taught me how to express myself, in a non academic setting, how to become a better public speaker, and now I will learn how to help organize an event for a whooping 3 000 people. Never planned that!
WordPress has also offered me security by giving me a chance to do what I am good at. I have been able to dedicate myself to research, to writing and languages. I have also been able to carry on meeting people and travelling. A country like Serbia hardly offers international work opportunities, and WordPress has opened my eyes to a new community; a community that forges friendships across the world, accepts everyone, encourages tolerance, and welcomes rookies with open arms.
AWP And More
I don't know of many other communities out there like WordPress, it's rare to find a place where everyone is accepted and valued. It doesn't matter if you are a software engineer or a language nerd, there is a place for you in WordPress. (This is the second part of my infomercial!)
The biggest thing that WordPress has taught me is that sometimes in the most unlikely of places you will learn the most valuable lessons.
It means that taking a chance is always worth the risk. Perhaps I wasn't bred for the IT world, and I am more suited to be in the same room at the National Gallery as the 17th century French paysage painter, Claude, and his English counterpart of the 19th century, Turner. It so happens that I can't paint, but I can write, and WordPress has created a virtual room in which I fit it.
17 Aug 2016 12:00pm GMT
11 Aug 2016
If there's one thing worse than writer's block, it's running out of ideas for your blog or business - or not having any to begin with. Luckily, the internet has made getting inspired an easy task, not to mention an incredibly quick one. In this talk, Nicole shares tips, tools, and content "lifehacks" you can use to generate 100 (or more!) content ideas in less time than it takes to settle on a new theme. Filmed at WordCamp Boston 2016
See more WordCamp videos at WordPress.tv!
11 Aug 2016 3:02am GMT