Philosophy & Culture
5.7 beta's release is just a week away!
We could really use some help in GitHub.
There's lots of dashboard pages that need to be reskinned and Evan's juggling quite a lot in there. His new personal hero is Job who is grabbing issues that we've assigned to Evan and getting them done first! What a hero! We owe Job a beer or two, but he just got some karma points and free add-ons.
Four years ago I wrote a somewhat inflammatory blog post titled Finally. Im proud to be an American because I did have hope in change.
Passwords: whether you're trying to gain access to your friend's tree-house or your bank account, you will need the correct password. But what's the best way to pick a password? If you look at the keyboard on your computer, you will notice several keys. Most of them have one letter on it. Some of them do not.
I walked through the Occupy Portland encampment before it was broken up....
Okay so we routinely hear from people that have setup concrete5 on some cloud based web server and find it slow. My answer is routinely, "Well of course, what would you expect out of something called ‘the cloud' – speed?"
The cloud makes a lot of sense to me if you have a huge number of small computing tasks. Need to store a load of data? Sure. Want to convert a kaballion images from one format to another? Perfect solution. Even if you've got a simple webapp that you want to be able to replicate a million times some morning when you get Dugg – okay, as long as the app is pretty light weight and you design it with this in mind.
(Pulled from here: https://www.concrete5.org/about/our_philosophy/a-letter-to-php-developers/)
I'm Franz, I used to be a developer, now I write emails. I was programming logo in first grade, I was running BBS's in the 80's, hacking together sites with SSI and PHPv3 in the 90's. Now I run concrete5.org with Andrew, who grew up hacking IRC and has worked with me for over a decade. We built concrete5 after years of consulting and frustration with other systems.
I know there are thousands of content management systems, and the learning curve for any new system is a beast, so I applaud the fact that you've bothered to look for something new and have read this far at all. Let me tell you a few things about where we're coming from that might help you continue to find the energy to get under the hood of concrete5:
- We talk about "path of least resistance" around the office a lot. This means creating elegant solutions to real problems. You can't get too high-level or you've just added a layer of confusion. You can't get too specific because you'll end up re-writing it constantly. It's about finding what the consistent elements of the challenge are and building a solution that addresses them while offering complete flexibility around everything else. Path of least resistance doesn't mean cutting corners, it means spending the time to understand a problem and create strong tools for building all the types of solutions you'll need in the future.
- Object oriented code is a good means to an end – but it's not the goal. The goal is having reusable code that someone can understand at a glance. If I had to spend 30 minutes looking for a single line of code that is buried 10 directories deep in a file with nothing else in it, chances are you've failed in meeting the goal, even though you're strictly OOP. That doesn't mean procedural is good, it just means quality is about thoughtful balance.
- Just because you can, doesn't mean you should. It's fun to brainstorm but lets not pretend every idea is a good one. I personally am the proud owner of many bad ideas. Every feature added means that much more risk of edge case bugs, so lets debate the value/cost ratio of that feature. Just because we're "open source" doesn't mean we're socialist hippies. Lets also not forget that the first 80% of building something is relatively fun and easy, it's the last 20% of dialing it in that will kill you.
- Less is more. These are websites, not rocket-ships. A page on a website is just a page. While concrete5 certainly has a learning curve and you will need to invest a little energy to get started, you should find the number of concepts you have to grapple with to be far lower than what you've grown accustomed to.
- From the ground up concrete5 was designed to be a CMS. We built this as our tool box to make picky agency clients happy. It's not a blog that people use as a CMS. It's not a news site that had features draped on it until it served no particular market and got dubbed a CMS. It is a well thought-out framework that was designed to let crazy clients manage a great looking website, with next to no training.
If you're hot under the collar right now because I just made it clear I'm not going to automatically approve your add-on when it doesn't follow standards, or that I've failed to understand that your computer science teacher is a god amongst men – chances are you're going to find your developer glory elsewhere. If these points resonate with you, keep exploring. You'll find a nicely thought out system that follows MVC and OOP practices where they add value, and helps you get your job done faster and more effectively in the real world.
CEO, Concrete CMS Inc.
Well if you've been paying attention to concrete5.org recently you've seen some fairly cool new stuff like the Karma system. Now we're launching a weekly video show "Totally Random" where we share news on concrete5 and interesting things we bump into along the way. Check out our super rough but amusing pilot here:
This was fun!
Got to talk about how and why concrete5 got started, what my own background is, and what makes a startup work. It's always flattering to be called a "go-getter."
Here's the link to the site: http://www.go-getters.ideatewith.com
Also, here's the iTunes link: http://itunes.apple.com/podcast/go-getters/id337491910
concrete5.3 has been made possible by long hours, a great community of developers, and the kind license grants of these folks:
This developer wrote the Python based engine we use to compare versions. It's the only script we've been able to find that actually does diff with an awareness of how HTML tags work. If you stop and think about it, you'll realize that's a HUGE challenge and this guy solved it with a few pages of code. You should hire him to think about very complicated problems if he's willing. He allowed us to bundle his GPL based script into concrete5 under the LGPL licesne.
This designer does a lot of amazing work, is based in Chicago, and is gonna be someone you read about in magazines and books one day (if he isn't already!) We're using his file type icons in the new file manager because they're dead sexy, and work at a large scale. He's allowed us rights to redistribute them with concrete5 and we really dig that!
Thanks to both of these guys, it's awesome to be able to find something amazing on the web and use it. We'll keep doing our best to make sure the whole package is greater than the sum of it's parts!