“Drat…..I just can’t make anything good with these tiles….”
If you haven’t muttered this under your breath a few times, you likely haven’t played Scrabble very much.But are you muttering this because of a mental block or truly bad tiles? Within the vast universe of possible Scrabble racks, what does “good” look like?
The serious Scrabble player would state that the effective value of a hand depends on where you are in the game. The early game favors scrabble racks that “play well with others”, giving you relatively large words with common letters that can easily be patched onto an open board. The end game favors prefixes, suffixes, and small words you can sneak into an open space. Bonus squares and the opportunity to build on large (5 – 7 letter) existing words also boost your score. All of this is true.
But here is a simpler way to approach the question: what if we look at the highest scoring word you can create using just the letters in your rack?
Mathematically, this question became: for a standard Scrabble rack, how many points of words (aka. the expected value) should the average Scrabble rack contain?
Continue reading “What Good Looks Like: The Expected Value of a Scrabble Rack”
We added two new solvers for boggle-style word games this weekend in response to some user feedback. Our original boggle solver was intended to find words in a 4 x 4 letter grid. The two new solvers extend our offerings to include a 5 x 5 boggle solver and a 6 x 6 boggle solver.
The technical side of this project turned out to be fairly straightforward. As discussed in the article we wrote about building a fast boggle solver, we approached the problem as a twist on our existing scrabble solver. We took key elements of the logic behind our scrabble solver (which checks the possible permutations of a rack of letters) and adapted it to check the possible paths through a 4 x 4 matrix. To create the new solvers, we simple expanded the scope of this search to support a larger matrix.
Continue reading “Hacking Boggle: Extending Our Collection of Boggle Solvers”
If we turn the clock back a year, I would be busy packing up the minivan and starting our long slow trip down to southern Alabama through some pretty nasty storms. Later that evening, I’m going to write a small Python word game solver script that ultimately evolved into the code behind this site.
Like many developers, I’d had dreams of building “a product” of my own. I even had a couple of piles of code sitting around from various attempts over the years. Most of these were built around pretty solid concepts – the sort of ideas you could walk into a room and pitch to rational adults. Projects like games, a stock analyzer, and data tools. I’m imagining the “startup weekend” pitch for Hyenas:
“Team, we intend to become a market leader in the scrabble helper, hangman solver, and boggle cheat space. This site will offer illicit services to a large audience of low-revenue visitors and entertain them for hours on end.”
Keep your cell phone handy: the reaction footage from the MBA’s will be comedy gold.
Continue reading “Hanging With The Hyenas: Lessons Learned From Delivering My First Side Project Using Python”
I’m going to share two little secrets.
The first is that I’m a huge Falling Skies fan. I don’t usually have much time to watch television between work, family, and various side projects (a word game solver and other experimental sites). But these guys managed to hook me during their first season. How is the interesting part…
Continue reading “Why Content Marketers Should Get To Know Game Designers…”
Summer is here and we’ve started a new tradition in our house, as part of our continuing effort to reduce the amount of television our kids are watching. About three or four times a week, we will break out some old fashioned board games and play them around the table. We’ve got two kids – a five year old and a six year old – so everyone is old enough to get in on the fun.
Continue reading “Fun Family Game Nights”
From an SEO perspective, there are only three types of blog posts. The secret to generating content at a productive rate is to always be aware of which one you are writing..
Here’s how I break up my posts:
- Show Horses – The good stuff! Content that you want shared on social media and that you eagerly hope will generate quality backlinks. A Show Horse post requires a good concept and high quality writing. The topic should be something with broad interest to the Linkerati (SEO, building websites, running a business) and requires a certain amount of “polish” to really make them fly…
- Work Horses – Covers a niche topic in reasonable depth, may be part of a larger string of related posts. These are generally SEO focused – oriented towards a specific set of keywords and/or containing well-crafted links to a second site. Expected to attract a modest amount of highly focused traffic (eg. tell me how to install library XYZ in python) who is a potential buying audience for affiliate items. Requires average writing and less polish than a show horse. Frequently ranks on their own pretty quickly but won’t attract much traffic – might attract some respect and/or links from insiders in your space if well written.
- Kibble – Lowest quality posts, written to let Googlebot know that you’re still alive. Often a good source of “house links” with targeted anchor text within your site and to related properties. Since this site is about word game solvers and word games, we have several options for cranking this stuff out. New word game features and upgrades are a good source of kibble (like when we released our hanging with friends cheat and scramble cheat). This stuff can be generated using a template (at least at the conceptual level) so you can create it efficiently. This is the blog equivalent of a DJ playing a long song while they take a break.
Each of these requires a different level of investment to succeed:
- Show Horse content frequently requires a couple of days to really optimize; this is where getting external perspective from a designer or SEO consultant can help. It should also be less than 10% – 20% of your total content – you generally don’t get more than 1 – 2 true Show Horse ideas per month.
- Work Horse content will require more subject matter expertise than Show Horse content, since you’re generally going deeper on a topic and establishing authority. Since these posts will be generating search engine referals you should take steps to control your bounce rate. Avoid thin content and make sure the article contains enough related links to deter visitors from quickly returning to the seach index. On a similar note, invest the time to make sure the technical quality of this work is solid. On the positive side, it will (or should be) evergreen content which you will derive value from for many years. I’ve found I can generally crank out a quality Work Horse article in about 2 – 3 hours. Bonus Tip: Recycle your old presentations into Work Horse articles; you’ve already done about 80% of the required work.
- Finally, be ruthless in reducing the amount of time required to generate Kibble. The best Kibble is generated as a byproduct of your regular business activities. My favorite source of kibble for this site is doing short (300 word) announcements after we release a new word game solver (for example, when we launched our words with friends helper) or tweak a feature. This usually can be cranked out in under 10 minutes. The other great source I’ve seen is data from software testing and usage reporting. I’ve taken output from a couple of the test programs behind the word game solver (here’s an example) and reformatted it into reference posts, doling it out 300 – 500 words at a time. Some of this stuff even ranks!
Know what you are trying to deliver – and invest accordingly..
There is a stigma to monetizing your side projects. I take exception to this. Building useful software is hard work. Maintaining it takes even more work. Adding a revenue stream to a project helps make it sustainable. This is good for everyone involved.
This is a big issue in the open source community. Github and Google code are littered with the remains of half completed and unmaintained libraries. This is a loss to everyone involved: the volunteers that built the library, the brave souls who were early adopters, and the community at large. And when the open source ecosystem fails for a particular space, our end-users have no choice except to turn to a corporate provider.
Continue reading “Building Sustainable Websites”
One of the more interesting elements of building a site like this working through the right level of “assistance” to provide a player. The goal, of course, is to make the game more fun for a player and (being pragmatic) do so in fashion which perpetuates their interest in the game. A lot of this thinking went into the design behind our words with friends helper .
We opted for a minimalist approach – enter your letters and we give you a list of possible words. The player is free to play them how they wish – keeping them involved in the strategy of how to put down their tiles while we help out with crunching through the dictionary of potential words. This gives a nice balance of help without making the game too easy…
Continue reading “Scrabble Helpers – Striking The Right Balance”
Zynga released the Android version of their Scramble with Friends game last weekend, which was our first contact with the game. It’s a social version of Boggle – the players take turns finding words in a 4×4 grid of letters, with a couple of additional elements Zygna threw in to spice things up. So naturally we decided to write a solver for it 🙂
Writing word game solvers has become something of a hobby for me. My first project was a Hangman Solver: this started off as a regex filter (Python) applied to a word file which we tweaked to make it more efficient. The next step was modify the program into a Hanging With Friends Solver: there are a few tweaks in Zynga’s rules which make it easier to guess a word (reduced number of possible answers). This website was built by taking these two Python functions and embedding them in a web framework. The front end is HTML dressed up with some basic JQuery.
Continue reading “Hacking Boggle: Designing A Fast Solver For A Timed Word Game”
This is a quick post since it’s a busy Saturday at the Hyena House. Wanted to share a cool article I discovered on Venture Beat (business website following the startup crowd) which provides – per Zynga – the most played words on Hanging With Friends… This is a slightly different twist on our quest for hard words for hangman and hard words for hanging with friends (used for our hanging with friends cheat) – it overlays a human element on top of the statistical crunching. This is effectively the union of the set of “hard words” with “high scoring words” and “words people actually know”.
Credit Venturebeat for the link:
Venture Beat – Most Played Words In Hanging With Friends
Continue reading “Most Played Words in Hanging With Friends”