Develop A Theme For Your Project – Spock Can Help April 28, 2013Posted by ActiveEngine Sensei in ActiveEngine, Mythology, New Techniques, Personal Development, Problem Solving, software economics.
Tags: ActiveEngine, balance, concentration, focus, Philosophy, Problem Solving, productivity, survival
add a comment
Many times Sensei has said you have to have a theme song for your projects. You may have certainly noticed that Sensei is old school, prog-rock and somewhat metal oriented. Spock’s Beard is a recent discovery and the group has direct roots with Transatlantic.
This latest album is a great source of inspiration, so if you have a ten minute walk ahead of, fire it up and it will get your head straight for serious productivity, creativity, or pure coding marathons.
The Speed of Thought April 17, 2013Posted by ActiveEngine Sensei in ActiveEngine, Approvaflow, Business Processes, Coaching, Fluent, Mythology, Personal Development, Problem Solving.
Tags: ActiveEngine, Approvaflow, balance, Bushido, Coaching, concentration, Philosophy, Problem Solving, survival
add a comment
Of late, Sensei needs to keep a clear head. That has meant learning to segment ideas and really, really, really focus on streamlined features. This is hard. Not because Sensei has a plethora of great ideas. That would be a nice problem to have. Many times in software development you end up this guy:
This is the state where you have things you want to accomplish, yet even when you pair things down to the “essential”, other essential, critical factors must be taken into consideration before you create a mess. This is life calling, and that string which suspends that giant sword that you noticed hovering over your head is about to snap. There is a good chance that you need more discipline, better execution tactics, far better honed chops, you name the metaphor. Sensei has been at this game for over 22 years, and still the speed that thought takes to become reality is way too slow.
With great sarcasm you can remind your self that some of the best work lays ahead, but the reality is that you still need to fight to be fluent, you have to claw your way to a Zen state of mind / no-mind. So chose, the art of bushido or the art of BS. Or maybe work smarter and enjoy life.
Before Sensei leaves you, ponder this: does “being done” mean that you’ve dropped off a product but have to get on the phone in order to make changes, and maybe now that you are struggling why couldn’t you figure out to take time when it was more critical to be fluent with your productivity?
Getting to 11 February 13, 2010Posted by ActiveEngine Sensei in ActiveEngine, Fluent, New Techniques, Problem Solving, software economics.
Tags: ActiveEngine, Bushido, concentration, focus, humility, new thinking, Problem Solving, survival
add a comment
In the past Sensei has written insane tomes regarding time travel and how your best intentions really get you no where. The story today is about getting to 11, which as Nigel says is one more than ten, putting you over the top. Consider for a moment the times that you really think you’re like this guy to the right. Yep, you think you have a Martin Fowler sized audience when you are coding. The scientists of the future will study my code and say “Here, this is the start of the great insight. How interesting.” In reality you are like Spinal Tap, unaware of how absurd you can be. Code too complex, but it goes to 11! Most blokes keep it at 10, but then you need to put it over the top take it up a notch. That extra notch. That’s 11.
Here’s a thought – what about 6? Is it viable? Can you be flexible by doing a 6, just good enough to not paint yourself into a corner? “Perfection is a process, viable is an end state.” As a developer you may not be able to judge what 6 is. If you’re in tune with your fan base you’ll know but that can only come from wisdom born out of great mistakes. For those of you who study Budo you may recall the concept of short and long and how relative scale can shift your advantage. Your opponent may have a sword and you only a dagger. Short and long makes a big difference, but you can alter that equation with small maneuver. Once you’re inside and beyond the sword’s curring range you have the advantage, as your dagger is now long enough to finish the skirmish. Change the scale.
Years back Sensei was given the task of reducing shelf space utilized by paper by 25%. The CFO arrived at this goal via scientific method. It was scientific since at Sensei’s company if you don’t do what the CFO said it is axiomatic that you were in deep doo-doo. Laws of hierarchy and all. Now imagine rooms filled with documents related to contractors, account-receiveables, human resources, legal contracts, project management etc. Yah, DISPARATE is the word. Not meta data, just a meta-mess.
Now in the best of all worlds where you need to get to 11, you would have time to survey all document types and refine each attribute set before you design your system for document categorization. This foundation becomes your data model in a database and many would claim that you should a create data table per document type to house the varying number of attributes. But you have 2 million sheets of paper to scan and in 12 months re-construction at your offices begin so you need to be able to walk into a room and quickly categorize all documents, throw them into boxes, scan them, and automatically assign the meta data to the document and store the thing. Oh, and if you miss a document type or need more attributes you don’t want to go back to your database, add or modify a table, re-gen your data access layer, add the attribute to your screen all before your adjust your categorization. And remember, you need to ship out 80 to 100 boxes every 2 weeks so you need to keep the data entry flowing. Finally, you are told that some projects can have up to 50 different types of documents, but no one is sure to what degree the project documentation is complete so the number of document types per project is not known and NOBODY HAS THE TIME TO GO THROUGH THE SHELVES AND CREATE DOCUMENT TYPES BEFORE ANY DATA ENTRY IS POSSIBLE!
Play the song, ’cause it adds to the excitement!!
Several key decisions solved this mess, and the solution was simple enough that temps could walk into a room categorize and pack documents into boxes for scanning. The error rate ranged between 1 – 5% per department. These were not solutions cranked up to 11, they were 6’s:
- No change to database schema or screens will be made, ever. A document was modeled with four tables with a base Document table, Document- Type table, Document-Attribute table that contained all attributes per Document-Type and finally a Document-Attribute-Value table where the meta data was stored. This way each Document-Type could be be created with simple data entry. One data entry screen that could create data controls on the fly per attribute type developed.
- Each document shall have a bar-coded coversheet. Nothing gets scanned without meta data. EVV-ARR.
- Import data from existing systems. The meta data for your documents resides in many of your accounting, job cost, and budget systems. Once document types are known, dumping data from accounts receivable and / or accounts payable allows your to assemble thousands of cover-sheets for all invoices. Quite literally you create a stack of paper for all possible types of invoices for all accounts, walk into a room, pull documents of the shelf, attach coversheets, and keep the sheets you didn’t use. Now, since the unused sheets have a bar-code, run these through you bar-code reader and create delete records for what you didn’t use. Now you have a complete accurate manifest of what was on the shelf and what was packed away. When the scanned images come back you can inspect them against the manifest.
- People can work better with paper. As stated in the last bullet point, creating all possible types of document coversheets per account or project and printing them allows you to quickly categorize all documents. With minimal or no data entry and a stack of coversheets, anyone now can go through shelves and associate the coversheets with the appropriate documents. In other words, the subject matter experts have a tangible, traceable system that they can hand off and supervise someone who can do the grunt work. Not sure where you finished with your categorization? Just look at your stack of coversheets. Want to inspect accuracy, grab a document and compare it to the categories printed on the coversheet.
What? Process management with paper ? That sucks! No it really doesn’t. You see, a 6 to you really is an eleventy-one for your user community who is really busy. Yep, you have to be smart with your database design by focusing on one key area and that’s it. The rest of the effort is imports with SSIS packages, CSV files, and printed coversheets. But it’s easy for the users to use paper, and that keeps a flow going. 2 million sheets of paper scanned in a year. Maybe a 6 isn’t all that bad after all.
Faith – The Time is Now Again July 18, 2009Posted by ActiveEngine Sensei in ActiveEngine, Coaching, Mythology, Personal Development.
Tags: ActiveEngine Sensei, bad software, Bushido, Coaching, Ego, focus, humility, new thinking, paradigm, self improvement, survival
add a comment
World so wide
Turn and turn again
Changes never end
Winding like an ancient river
The time is now again
Hope is like an ancient river
The time is now again
Indulge, play the song, drink in the message and go hug your kids, embrace your family, be thankful for your friends, team members, co-workers.
There is so many new things on the horizon. For those of us who are lucky enough to practice this technical craft called programming, we can be stymied by all the possiblities, the arguments and skirmishes. These de-rail you. Build a fortress against the distractions and ignore your fear of change by embracing the challenge of good arguments. It’s all a chance for you to improve.
When you arrive at work think of what ways you can engage with others. Can you practice your techniques in a better way? Recite the Wolf Creedo and end an argument. Better yet, start a new one in jest and revel in the ideas. Bang out some code and fight for the day. What new things can you add to your team’s arsenal if you inspire someone else? Are you leading or are you a suit sitting in a chair? Would someone ask you for help or think that you’re too involved in your own head to deign to talk to them? Have you built an empire above you or below you? Is your legacy more important than what you have truly done?
Okay, so you’re code was awful – but did someone else still benefit? Was your code perfect but never used? Was your ego hurt yet your company still profitable, keeping families fed? Did your mistakes help others learn?
What matters is that you engage. Most times it will be painful. Developers need serenity to produce but I’m telling you man you’re lucky if you have it. Life is full of the distractions and once you conquer them, you’ll find greater strength and battle hardened capability. Work at it. Revel in it, share it. Be grateful and humble. Win and go home to the ones you love. Technology is great, but you as a friend, mother, father, co-worker, neighbor, dude in line at Starbucks or grandma at church are even greater.
Sensei’s Playlist – Pay the Rent with Rock! July 10, 2009Posted by ActiveEngine Sensei in ActiveEngine, Coaching, Mythology, Personal Development.
Tags: ActiveEngine, balance, Coaching, communication, concentration, Ego, focus, new thinking, paradigm, Problem Solving, survival
add a comment
You’ve asked for it – well you didn’t actually, BUT HERE IT IS ANYWAY!! Yeahhh! Music to pump you up. Rev your ActiveEngine to these tunes, babes, and get stuff done. Decisively. As in total victory.
There’s a new page to the site, Pay the Rent with Rock. Here is the music that get’s me through. It’s powered by Grooveshark. Post a comment with a suggestion if you like. If it cranks and you’re lucky, I’ll include it. Describe what scenario your song helps you pull things off, helps you get things done, cranks, whatever.
Here’s a sample:
This bloke to the left loves it!!
Resurrection July 9, 2009Posted by ActiveEngine Sensei in .Net, ActiveEngine.
Tags: bad software, Ego, survival
add a comment
Sounds like the title to a sequel. Well, perhaps that’s right. It’s been a long time since my last post, and although many of you may be wondering if I have been morning the fact that there will NEVER be any finale to Deadwood as indeed I have, I have been primarily engaged with work. Lot’s of work. I did do a grand standing post naming 2008 the year of consistency and yep that was stupid. Checking the dates on the blog are a good BS indicator. My only defense is that I have been consistent at work, and in these times that is an achievement in of itself.
My quest has, though, been very consistent. Rev up productivity. A year is like a century in the world of technology and much has contributed to my “growth”. Ewwww – sounds like I’m about to use the phrase “My journey with you has been amaaaazing.” So scratch that – I’ve gotten smarter about somethings as circumstances have provided me greater illumination. Yeah.
For one, I’ve learned about the short comings of .Net. Big short comings. Big technical debt short comings with respects to RIA. Am I a jQuery / CSS bigot? Nope – you just need the right tool for the job. With regards to domain logic my strength is .Net. If you were to ask me to create a business layer for an application I would reach for the #, C#. That said, I am in agreement with Rob Connery – I need to add him to Pantheon along with Atwood and Spolsky – when he pronounced at MIX:
ASP.Net locks you into a box where if you only use the server side controls and rely entirely on ViewState, you cut your ability to adapt to change in half. Yes – each time you have to re-compile you’re screwed. Rely on the HTML emitted by the controls, and you’re screwed. Try to apply CSS to an autogen’ed menu – well, ahh, you CAN’T! Moving from the UI to the Domain, you can utilize patterns to reduce coupling and isolate the impact of changes but in some cases you need to configure, not develop. Adding scripting to your app engine can help your users – that’s those who you are working for – introduce alterations to the solution.
I’m babbling here as I try to re-introduce the blog to people, summarize my direction, and bring new thoughts to the table while trying to remain half way intelligent. Earlier I mentioned RIA, and in the context of ASP.Net there are some truly great things happening that allow you to combine MS platform with awesome Web 2.0 style techniques. This post by Dave Ward at Encosia will open your eyes to the new possiblities that jQuery bring to the table for great RIA development with .Net. That’s without Silverlight. Enjoy.
Clarity of Thought Only Comes From Practice November 21, 2007Posted by ActiveEngine Sensei in .Net Development, ActiveEngine, Business Processes, Coaching, Personal Development, Problem Solving.
Tags: communication, ProjectManagement411.com, selling your solutions, survival
All of you code jockeys need to start a new series of mental calisthenics. Your thoughts are blocked, as your set of speech patterns is your worst enemy. If you have used the phrase “I want it to be extensible” in front of you customers this week, shame on you!
The business community is looking to solving problems, but they are not looking to you for help; rather, they want you to just make things work based on what they tell you the software should do. Because of that fact alone you may not be offering the value that will sustain your gigs, period. “Open to extension, but closed to modification” – who cares, because your customer base can’t understand you what you mean.
ActiveEngine Sensei says head over to ProjectManagement411.com, and learn what the business community wants to hear and how to best communicate with them. You should read the series on value selling your projects, because you’ll notice that NONE OF IT MENTIONS THAT MODIFICATIONS TO YOUR BUSINESS LAYER .DLL’s WILL BE CHEAPER BECAUSE YOU USED THE DECORATOR PATTERN!!!! That’s not on their minds, and hearing that from you maybe why they want to ship your job offshore. You need to learn how to measure value through their eyes.
ProjectManagement411 is focused on how the enterprise can become lean, how agility is going to become their ActiveEngine. Don’t let this synergy pass you by. Concepts like Data Stewardship may make you snicker, but that is the way your stay will extended.