Truthfully I haven’t given this blog the love it deserves. In the space of several years, we’ve gone through numerous medical challenges, had a beautiful daughter, started a company ( or two), built some new sites, revamped a few, and completed a transatlantic move. As things settle down in the next few weeks – I’ll try to do some justice to these major changes in our lives.
For now I’ll leave the blog with this – we are doing just fine. Of course we are working harder than we should – but that’s ok – it’s the lesser of so many evils. I’m having a blast finding the balance between being the mother I want to be and the professional I want to be. However, I’m happy with where I am in life and what potential lies ahead.
I’m quite enthusiastic about playing tower defense games. My latest one is Penguins Attack 2. This one is pretty good because in addition to levels, bonus levels, and tower upgrades, you have to earn experience points to get even bigger tower upgrades. Level achievements include beating a level, killing the boss, and beating a level flawlessly.
I recently conquered level 8 . In the earlier levels the strategy is to get the most powerful towers quickly. As you move onto the higher levels (4 onwards) you need to make the enemy route as long as possible with basic towers to buy you time. You also need to space out your powerful towers so that they can hit new as well as close to exiting enemies.
Below is the screenshot of the configuration I used to beat it :
Earlier this year, we decided to embrace Feedback Server. The more I learn about this survey software, the more I like it. Like all technology ( and content management systems) the true power of the tool lies in the ability of the end user to manipulate it to meet their needs.
I’ve never been a fan of asking a user to loop through a series of questionss based on previous responses, because it gets very easy to lose your place within the questions. Further more, the more you loop, the infinitely larger your number of potential responses – which means that your data export will have a ridiculous number of variables.
Our initial approach
Because you don’t want users to move backwards in a survey, we simply duplicated the questions on different pages and changed the text slightly so it referenced their place in the logic. By using branching logic, we were able to push people to the page that displayed the same set of questions the right number of times. This allowed for looping through the questions. I had some down time today and decided to think through a cleaner way for users to navigate through sets of questions that have nested loops,without creating such complex page structures. After all, this approach requires that you create excessive numbers of questions.
I should also illustrate, this solution is designed to support survey questions like this:
1 – please check each option that refers to you
2 – for each option that you checked, please provide the following 4 pieces of information.
A cleaner solution
This solution requires 2 things :
A question type : Text Box Entry Fields
Building a custom answer type
In this solution, instead of using multiple pages to loop through the same questions, we will use one question and repeatable grids to allow the user to keep entering information as needed. Please note that this solution does not copy and paste your previous answers to define how the next question behaves. This means that some slight modifications will need to be made to your survey questions to use this. That being said, this will result in fewer pages, less clicks for your user, and a survey that’s easier to follow because it won’t have to jump from question to question.
Text Box Entry Fields
Select New Question and choose Textbox Entry Field (Small) – or use Comment Field Large if you want paragraphs of text. The nice thing about this question type is that you can define multiple responses for a single question. You can also define multiple answer types within a single question.
Click Create Question
Now you can enter the text / instructions for your question. Once you have done that, select a text answer label for each text field you want to be able to repeat as needed.
If you have something that you want to repeat over and over, you can use a custom answer type to do that. For example, instead of saying – for each box you checked in question one, answer this set. You can use the repeatable grid and add your custom answer type which provides all of those check box options from the first question.
To create a custom answer type:
Go to designer, then Answer Type Editor
Click on Click here to create a new type
You can now select the type you want. You can do a drop down or radio buttons. Please note that I’ve selected List Items under data source because I’m going to enter the list options manually.
Add your responses to the Item Collection Editor and hit Apply Changes
Configuring your question to use your answer type
Now that you have your additional answer type, you are going to combine your text field answer options with the new drop down items you have selected. You are going to set your question to allow someone to go to a question, fill out several fields, and then choose a drop down option as well . To be clear, here’s an example :
Q1 -Please tell us about the fruit you buy
– Name of fruit
– How you check it for freshness ( 3 drop down list options )
They will have the option to add as many fruit as you want. For each one, they will have to enter the name of the fruit and select a drop down option.
By now your question should be created.
Click on your question and scroll tot he bottom to Add Edit Answers
Click on Add New Answer. You are going to be adding the new answer type that you defined.
Answer Text – this is the label for your custom drop down
Type: Use that drop down to select the custom answer type you wanted
Go back to your question and click on sections
For Repeat Mode – Select Full Answers Repeat
Choose the maximum number of repeats you want
Under the Display layout tab, you can determine if you want a vertical set of responses, or if you want them to show horizontally. Please note that with a full grid repeat, after the first response, the previous responses will be shown in a horizontal grid.
If you look at the question above. Instead of creating branching logic to take someone down a path, making them choose how many responses they want to give and then creating pages for them to enter the information; we have pretty much allowed someone to stay on the same question, enter whatever information they want, and keep adding responses. For the end user this is a lot cleaner because it’s blatantly clear as to what question they are still on. They can view their previous responses and add/edit them as needed.
As a last note – if you wanted to prevent someone from choosing your custom answer option more than once, you simply go to edit that answer, click on entry validation and choose Forbid duplicate answers.
As we work on things, we’re always looking for ways to make an interface cleaner for an end user. This approach definitely reduces the user burden by reducing the number of pages required to collect multiple responses for similar questions.
It is sometimes frustrating having to navigate through Mac OS folders in Finders especially if you know exactly what folder to go to. The simplicity of the Mac OS X interface sometimes takes away some conveniences enjoyed by power users. In Windows I often save a file to a desired location by doing a “File Save As”, then pasting the full path of the save-to folder location to avoid having to browse for the folder.
I will show at the end of this post how to do the same in Mac OS X, a feature I found by searching the web. But first, I will show how to get folder paths in Mac OS X and quickly navigate in Finder using these paths. Folder paths if Finder are disabled by default.
Quick Folder Navigation in Finder Step 1.
To show folder paths in Finder, open Finder and select View > Show Path Bar
The folder path is now displayed at the bottom of your Finder window.
You can navigate to specific folders within this path simply by clicking on the folder name at the bottom of the Finder window.
To get the full path of a folder, simply right click on the folder within Finder (or Control + Left Click), and select Get Info
Once the Get Info window opens up, highlight the folder path and copy it either by doing a Command + C, right clicking and selecting Copy, or Control + Left Click (so many options, I know…but I am sure you are familiar with one or more of them )
With the folder path copied in your clipboard, have a Finder window open and use Command + Shift + G to bring up the “Go to the folder:” window. Paste in your folder path and click Go or hit Enter to navigate to your desired location.
File Save as to File Path
To save a file to a desired location, I often would have to navigate through folders in Finder to my desired save to location. This is a tedious process when dealing with multiple files or saving to a sub folder in an obscure location.
After selecting File > Save As from whatever application you are using, a Finder window pops up. This often has your last save to location, which may not be the location you want to save the file to.
With this window open, do a Command + Shift + G, which will bring up the “Go to the folder:” window.
Paste in your folder path and click Go or hit Enter to navigate to your desired location.
You will now be at your desired save to location allowing you to save the file without having to painstakingly navigate from one folder to the next.
I hope this is helpful to my fellow Mac users. Thanks!
The document management component of SharePoint is easily one of my favorite (if not my favorite) feature of SharePoint. Whenever I do a SharePoint consultation for a team, I like to stress the document management features. I also like to debunk a common SharePoint myth: that SharePoint is just a dumping ground for documents. Yes it’s true that SharePoint can easily take your documents, but there’s so much more to it. This article covers some best practices for moving your documents into SharePoint and improving ease of use. Hopefully this article will give you some guidance before you decide to dump that network folder into SharePoint. Just a quick note – this article will not teach you how to configure document libraries. If you want a good how-to – click here.
Preparing your files to move into SharePoint
Although SharePoint does function like a network folder, however it does have to abide by a few more rules. For example, since it is a web-based application, you can’t just have unlimited lengths in your file / folder names. SharePoint will simply give you an error message (The specified file or folder name is too long.) and not tell you exactly what file or folder is causing the problem. According to Microsoft, “The URL path for all files and folders must be 260 characters or less (and no more than 128 characters for any single file or folder name in the URL”. This means that if you have extremely long file names, extremely long folder names, or deeply nested folders, you may need to think about the general organization before you drop your files in. You may find yourself reorganizing your folders before you are able to drop your files in.
Once you’ve dealt with your file folder structure, you will need to look at your file names. Although Windows will allow you to have special characters in file names – SharePoint does not. The biggest offender is the & symbol. Make sure that none of your files have special characters before you dump them into SharePoint.
Cleaning up your files
We’ve all been there: in order to keep track of file versions, you simply put the current date and your initials at the end of the file name. When your task / project is over, you find that you have 20 copies of the same file all differing by the date and the acronyms at the end! This might seem like organization, but if you try to search, all 20 files will appear! To add another layer to the problem, if you dump all of these file versions into SharePoint, the search will return all of the files as well. Doing this pretty much cripples any search feature. SharePoint has a comprehensive search feature that even reads documents. You may want to clean up your network folders to ensure that you can benefit from the SharePoint search features.
Folders vs columns
If you are thinking about moving a network folder into SharePoint, chances are that you tried to create a level of organization through using network folders. I have been against using folders as a primary method of organization since I started using SharePoint. I actually prefer a combination of folders and columns to increase the ease of navigation through the documents. As you drill down into folders, you cannot see what is inside of the upper or lower level folders. You have to drill down into a folder to see what is inside, and then navigate up and out to see what else is available.
Folders provide a logical way to organize your content. However, you cannot sort and filter information by a folder. You also cannot see what is inside of a folder without opening the folder. If you use columns, you can apply unlimited sets of meta data to your files. Below are some examples of file meta data that I often use:
Status ( Active / Archived)
Date ( This is not the date it was created/modified, but the date the document is related to)
When setting up your views, you can choose to show or hide folders. By hiding folders, you can view documents in an unlimited number of sub folders. This little feature allows you to put files in folders that make sense to you and also benefit from the sorting and filtering of the meta data you have entered. The down side to this is that you have to enter meta data for your files to use this feature.
One last tip: SharePoint can only support 1000 or so documents in a folder or view before it starts to have performance issues. You may want to use folders to avoid this file limitation, but use columns to provide easy ways to navigate your files.
Assuming that you have figured out your document library columns and folders, you are probably ready to create views. If you create different views based on your meta data (columns), you can create multiple interfaces for end users that will make it easier to navigate through your files. Referencing the columns I mentioned above, I use the custom status column to help me mark files as relevant (active) or old versions (archived). I created a view that groups documents by their status, making it easy to see the files that are active and the files that are considered old and should not be referenced. You can easily put the same document library web part on a single page in different views to make it easier for users to navigate the files. The first view would show a standard list view with your choice of display. The second web part should show the document library in its default view with folders. This allows users to upload a file into the folder that it belongs to, but view the document in the view that hides folders. Give careful thought to the views so that users can easily get to the files that are buried deep in the folders.
Search vs filtering / sorting
SharePoint provides a very powerful search feature. Not only will it search file names, titles, and columns, but it will also open documents and read the documents and return search results accordingly. This means that the search can find pretty much anything. The down side is that this means that the search will also return results for anything that matches your search terms. Because of this search capability, search should not be your only method to help users find your files. If you use columns effectively, your users will be able to find documents by combining filters of columns to narrow down the documents that they want. Make sure that you hide folders in your views that you intend to use with filtering and sorting. You do not have the ability to narrow down the search results by columns without custom development, so unless you have a developer on-hand, you should try organizing your content by columns and use sorting / filtering as a primary method.
Version control in SharePoint will eliminate the need to rename files in order to track versions. SharePoint also provides several ways for team members to communicate what has been changed in a version. You can require users to enter a comment for the version before they save. This makes it easy to track the changes as you review the list of versions that are available. You can also request that users enter a message in the check-in comments field. You can then display the comment in the document views. This helps your users understand what is inside of a document before they open the document. You can also use the approver comments field to track information regarding the approval or rejection of a file.
Some final words of wisdom
Don’t be afraid to create multiple document libraries. Sometimes it’s better to split a network folder into multiple document libraries to allow for searching of just a section or to handle issues with deep nested folders. Do not use file names to try to store all of the information about the document. Instead you should use additional columns to store that information. Try to use columns that will work for sorting and filtering. Get out of the habit of renaming files. If you choose to use workflows and rename a file while in the middle of a workflow, it will automatically terminate the workflow. The bottom line is that you need to think long and hard about how you want to organize your documents before you move your files into SharePoint. Do not simply open explorer view and copy and paste an entire network drive into a SharePoint document library. If you design this properly, your users will be able to quickly work through the files that are in the document library. If you do not, you will have the same issues as you did with your network folders, and your search will not yield useful results.
This is a fix for an error code that you may see while trying to integrate FaceBook connection in Vbulletin. This fix addresses this error code when trying to use FaceBook connect in Vbulletin:
API Error Code: 100
API Error Description: Invalid parameter
Error Message: next is not owned by the application.
First I will start by saying this I did this on VBulletin 4.07. This may be applicable to previous versions of VBulletin – but I just haven’t tested it. I was really frustrated because after upgrading VBulletin – I saw this awesome FaceBook button. Everyone said it was easy – simply install it – put a few links in place and you will be good to go. It’s really not as intuitive so I decided to post a how-to here.
You will need 2 codes for your application : the FaceBook application ID and the FaceBook Secret. Save these in notepad somewhere. As soon as you create the application you will get the two codes.
Step 1 – Upgrade your Vbulletin
Step 2 – Go into your VBulletin Admin Control Panel
Step 3 – Click on Options under settings
Step 4 – on the right, Click on FaceBook Options
Step 5 – Enter the Application ID and the FaceBook Secret Code that you saved in notepad
Step 6 – Fill out the rest of the fields. They are fairly intuitive – and most of what you enter won’t affect the outcome of this article.
Now you are NOT done! You need to go BACK to FaceBook and make some changes to your application. This is where I met my first point of frustration with this solution. If you have been reading articles that say – just enter your post authorize URL and have NO idea what that means – this is what they are talking about :
Step 8 – Select your application – it will be listed under My applications to the right
Step 9 – Click on your application name
Step 10 – Click on edit settings
Step 11 – Fill out the basic information. You can also upload an icon and a logo for your application. Make sure that you have a page with your privacy statement, you will be asked to link to it on this page.
Step 12 – Click on the Website tab on the left
Step 13 – You will need to enter the site URL and the site domain. This is the crucial stepthat makes your integration possible.
Once you have done this – your FaceBook integration on your forums should be activated.
After spending half a day trying to google the answer to this and always coming up on one-sentence answers on forum postings, I figured this little frustration deserved a proper step by step how-to.
Earlier this week – I watched my first world cup match. I guess I should throw a disclaimer out there – I’ve never been a huge soccer fan. I almost never watch soccer although I did play it when I was in high school. Before I get started – there’s one other thing. People would always correct me as an American – calling football soccer. Except – here in South Africa – they call it soccer . So there! No more paying attention to the folk who keep telling me to call it football!
We did the fan walk to go to the first game. It’s basically a 30 – 45 minute walk from downtown to the Green Point stadium. Along the way there’s music, food, and tons of little stalls. I’m still planning to do it one more time so I can get a pimped out vuvuzela. It seems the best ones are sold there. I was shocked at the police presence in Cape Town. It’s not just a few extra police – there are thousands of them. They walk in groups ranging from 3 to 10. You see them on horses, on bikes, on foot, in cars, etc. Some walk around, some are stationed, and some are handling traffic. It’s actually quite amazing to see such a heavy police presence.
I went to watch the Portugal vs. North Korea match earlier this week. We had regular tickets in the stands. We ended up sitting amongst a group of Portuguese fans. Everyone wants to see goals when they watch a match. In this match, Portugal destroyed North Korea with a devastating 7-0 score in their favor. Everyone jumps to their feet when a goal is scored. There were so many scored in this game that it felt like doing a squats workout.
The game was well attended – approximately 63000 people in attendance. I was worried about the vuvuzelas and the potential noise. Everyone was talking about how horrible they are and how loud they are. I honestly think this is just bias. I had ear plugs but I really didn’t need them. As long as someone doesn’t blow one near your ear – the sound is fine. The ambience in the matches is pretty cool. The people with vuvuzelas have sort of sound offs. One group on the other side start a beat with theirs and the vuvuzelas on the other side start blowing with a counter beat. That goes on and off all through the matches. As a team begins to gain momentum – they start blowing to the beat for that team.
And then there are the waves. I’ve seen waves in a stadium – but somehow these seemed to have a life of their own. For starters – it’s awesome to see over 60000 people join in a wave. As the wave approaches, you start beating your feet on the ground to create a thunder sound. The feeling is amazing – it vibrates through your whole body. Once it’s upon you – you jump up wave, blow your vuvuzela if you want, then go back down. The waves circled the stadium over and over and over.
So I have only a few gripes about the experience. First is the lack of food in the stadiums. McDonalds is the official food for the stadium so there are a few lonely McDonald’s stands. The only other food available is ice cream. Now who wants ice cream at a soccer match in the winter? Budweiser is the official beer – but no one drinks Bud in South Africa. So there isn’t a lot of drinking going on. Half time is literally 15 minutes long, so the bathroom lines are insane at half time. In fact, all of the lines are insane at half time. They did have some folk walking through the stands selling beers – but they really needed a lot more.
When the match was over, we got up and headed out. I was expecting long lines and a miserable process getting out of the stadium – but it was actually painless. We basically had a nice leisurely walk out of the stadium. People were still blowing their vuvuzelas, recounting the awesome 7 goals we saw, and basically behaving like crazed fans. We did the fan walk back to the city and decided to go bar hopping for a while. The bar hopping is actually pretty nice. Cape Town is renowned for Long street and its bar life. Add thousands of tourists to it – and it’s a bar hopper’s dream. Everywhere we went – people were clad in their national colors and flags. Since no one was drinking at the stadium – people went straight from the stadium to the bars and started loading up. There was a nice celebratory mood across all of the bars and lounges. It was nice to see all of the excitement, national pride, and patriotism, without any of the angry violent behavior that can ensue. All in all it was good times.
Being South African and American – I couldn’t possibly turn down the opportunity to come to the world Cup. So we got ourselves together and headed down to Cape Town to enjoy the first World Cup in Africa. This time we flew through Europe – as opposed to our usual direct Atlanta – Johannesburg route. The flight out of the US was nothing to really shake a stick at – but the flight into South Africa was quite something else!
We were situated in our seats when 6 senior-citizen European men came onto the plane. They were clearly tipsy and jovial (to say the least). They were giggling, laughing obnoxiously and staggering as they made their way to their seats. Once they figured out where they were sitting – they started telling jokes, laughing out loud and telling stories so loud – we could all hear it. Several other passengers muttered, “11 more hours….. this is going to be horrible”. I should start by saying – I’ve never quite understood hooligan culture. I have sometimes contemplated what motivates the passionate European fans that wreak havoc with their sports-inspired revelry. These men were clearly itching to get up to some mischief – and it hit me – these probably aren’t hooligans – but they are either retired hooligans or perhaps the parents of some hooligans. The remainder of the flight was a flurry of requests for cocktails, wine, and beers. The flight attendants came back countless times asking them to be quiet. Not only were they chanting and singing, but they kept congregating together. At any given time 2 – 3 of them were standing in the aisles with a glass of wine or beer, laughing out loud about something.
At some point, one of the men actually pulled out a light-weight European version of a Vuvuzela and started blowing it on the flight. I could only think that if this flight was bound into the US – an air marshal would have detained them and probably diverted our flight out of the US! At one point, after about 20 minutes of constant horn blowing, the flight attendant walked by calmly and snatched the horn. She was met with cheers and clapping once she finally did it.
Then there was the singing. I heard a few national anthems and then lots of “Oooooolaaaaaaay-Olay-o-Laaaaaaaaaaay! Oooo-Laaaaay-Oooooo-Laaaaaay!” I couldn’t help but think that – these men were old enough to be someone’s parent. Imagine if your parents were this passionate about their teams, I can only imagine what their children were like. I felt sorry for anyone who was trying to sleep on the flight because there was no chance with all of the singing. Ultimately the flight ended without incident, but it made me realize how serious this soccer business is.
Peter and I take a very methodical approach to our common goals. I was toying with the idea of finding a free SharePoint service out there – when I ran into a free Microsoft service called Microsoft Office Live Workspaces. It was free and all I needed was a windows live account and I could have a space. Well I should add one caveat – you also need to have Internet Explorer to use it! Oh and there was the requirement of having the Silverlight plug-in installed. OK – so after I got through all of the hooplah– I’m still thinking that this is pretty cool.
Here are some useful specs (the good stuff ):
MS Office ( Word, PowerPoint, and Excel)
MS Office integration
Permissions (only site level – not item level)
Version control on documents
Allows comments on documents / etc
Allows sharing of documents
5 gb of storage space
Light-weight email notifications
Does allow for customization of lists
Here are some limitations
No item level permissions
Not a strong task management solution
Requires internet explorer
Works best when you own Microsoft office
Requires several plugins
Content Management is very light-weight
All in all – for a free solution – this is a good tool to use. I’ll definitely be using it for small personal projects. It’s a place to dump your files, share task lists, share calendars, etc. It’s god because it allows you to create unlimited numbers of workspaces and to apply permissions accordingly. The interface is also much cleaner with a Web 2.0’ish feel. Microsoft might be onto something with this freebie SharePoint-like wannabe.
Fieldrunner is possibly the most popular tower game available for phones. I think it’s played mostly on iPhones and iPod Touches. I’ve been playing it on my iPod Touch for the last few months. Once i beat the main 3 levels, I bought the other two levels. I was absolutely frustrated with the Frostbite level because for some reason those helicopters simply wouldn’t stop running over my towers. I finally beat the level and was able to push it to level 135.
The secret to this map is to use the ice towers heavily. You should use them between every 5 – 6 towers and upgrade them fully. Although rockets are great for helicopters, in this case, the lightning towers are your friends. I basically wrapped the center of the map in electric towers and ice towers. You can use the gun towers to build the longest possible route to the entrance. I’ve also had a lot of success with making sure that the only entrance to the goals was on the left. The screenshot below is my configuration and what level 100 looked like:
I did try to do some upgrades to see how far I could keep this going but I lost at level 135. The screenshot below is a screenshot of my configuration for the final levels. I should have taken a screenshot at 135, but here’s the one I did at 131. I still had the same configuration at 135. I did try to use the fire towers, but frankly speaking – I don’t think they are effective on this map.