Featured Posts

Notes from An Event Apart Boston 2012 I had a great time at An Event Apart Boston, 2012. Ill post some photos soon. The conference avoided deep dives into code in favor of showing WHY you would do reactive design. As Eric Meyer said "My...

Read more

Judging the CT Student Innovation Exposition (E-Commerce)... Want to know what the next 10 years will look like? Ask a high school student. Their creativity isnt limited by their knowledge of what we currently call technological limitations. They have a vision of...

Read more

The Value of Feeling Appreciated as an Employee in... Whether you’re a new employee or the vice president of the company, everyone wants to feel valued, even appreciated, in the workplace. Not only does it improve morale and make the workplace a more pleasant...

Read more

The difference between classic and motion tweens in... Here it is: If you're used to doing things "the cs3 way" then you can continue to do so with the classic tween tool. It works the same way as you remember, using key frames as normal, but you cannot...

Read more

PHP: If (equal to AND not equal) - eliminate form spam... Just learned a great function of PHP thats already made my forms a lot better. A while back I wrote an article about eliminating form spam without captchas by using css to hide a text input box for bots...

Read more

twitter

Breaking News

  •  

Make Twitter 1.1 work on WordPress

Category : Cool Web Programs, Great Tutorials, Technology

Twitter 1.0 has been sunset by Twitter so it is no longer functional. As a result – all plugins and themes which used this API no longer work. You must now use the new v 1.1 API.

The best WordPress Twitter 1.1 solution I have seen so far is this little gem: Twitget by Boštjan Cigan.
Its free, installs easy, and there is a silent yet effective YouTube video to help guide you on your way through the Twitter applet creator.

The widget allows you to add custom html to let you revise the css in ways that actually wern’t possible in any of the tools I saw in 1.0 so kudos to Bostjan for expanding the features and making this problem into an opportunity.

I’m currently using this plugin on another site of mine: http://www.TEDxBushnellPark.com
Hope this help.

Use Light and Shadow to Add EyeCandy to a Design

Category : Great Tutorials, Teaching

This is a great article from Smashing Magazine about bringing life to what could be an otherwise boring page. I referenced this site in my TCC lecture on November 17th. With a few simple manipulations you can add plenty of eye candy to just about anything: buttons, backgrounds, headers, logos… so I guess thats anything really.

http://www.smashingmagazine.com/2009/04/20/5-simple-tricks-to-bring-light-and-shadow-into-your-designs/

First Meeting with Gray Screen Developement Process

Category : Around The Office, Coding and Database, General Web Info, Great Tutorials, Technology

I had my first in person meeting with a new client yesterday, The Autism Society of Connecticut. This is the first project I’m using the gray screen development process for and I LOVE it. The process is much more straight forward and we covered in detail almost all the pages in the site objectively. Because I had the whole site mocked up we could see potential problems that would otherwise not have been evident and we were able to completely rework the navigation from the way it was in this first round of revisions.

We’ll see how it works in the next round and make more revisions on it I’m sure, but this was awesome in a first meeting. I’ll build out the backend as a gray screen using developer notes instead of actual database functionality.

NewFangled, hats off to you for bringing this technology to my eyes. You broke the industry. If you dont know who these people are, click the link and check out Process >> Prototyping. You wont be disappointed.

10 Transition Effects: The art of Showing/Hiding Content

Category : Art & Design, Great Tutorials, Slick Code

Great archive of different show/hide effects using JQuery, which I gotta say is quickly becoming the new “Flash” of the internet. You dont need a special player for JQuery and it interacts (and even plays nice) with other non JQuery elements, something Flash can never do.

http://devsnippets.com/article/10-transition-effects-the-art-of-showinghiding-content.html

Check out whats possible and then start learning JQuery.

Excellent CS4 Kinematics tutorial by layersmagazine

Category : Flash, Great Tutorials

Just discovered a new tutorial site while doing research for my class tonight. Layers Magazine is chuck full of animation tips and great videos about flash. Great articles and I gotta say I really enjoyed the guys teaching style and overall tone.

This tutorial is on using CS4 Kinematics tools. Here I was thinking flash was almost dead and then CS4 comes out to change everything… fantastic work Adobe. The ease of this changes everything.

http://www.layersmagazine.com/flash-cs4-animating-puppets.html

Flash CS4’s new inverse kinematics tools allow users to create and arrange symbols in a collection called an Armature. These armatures contain bones that have relationships with other elements which can be animated. Users can create and control their won dancing puppet.

Smashing Magazine takes the time to explain typography while showing great text photoshop tutorials. Thank goodness.

Category : Great Tutorials, Photoshop, Typography

In what is sure to be a hugely trafficked and bookmarked post, 50 Stunning Photoshop Text Effect Tutorials. I’m delighted that Smashing Magazine took the time to explain basic typography FIRST. While not a complete history or explanation of everything type this might be the most complete, yet concise, summary of what you need to know before you go gallivanting off with an army of text effects.

This post is not just a heaping pile of knowledge. This is SEM success on an SEO goldmine. Better yet, Smashing Magazine will shine for this and in the process we can only hope that their younger readers this will pause and learn something from the first half (the typography section) before stampeding towards the tutorials.

Yes, the effects are cool, but using an interesting effect on poorly is still an utter failure while good type can stand on its own without any effects what so ever. I also hope that readers understand that you should never use an effect gratuitously. Use the right effect to further your message; not to use an effect.

7 Principles Of Clean And Optimized CSS Code

Category : CSS, Great Tutorials, Slick Code

http://www.smashingmagazine.com/2008/08/18/7-principles-of-clean-and-optimized-css-code/
This is another post from SmachingMagazine. The principles are a pretty good standard ruleset.

#1 (shorthand CSS) is key. I opt for the least amount of whitespace as I can as some of the CSS files I write for larger sites still have a few hundred lines. This is without the IE 6 hacks, which are in a separate CSS file, which they recommend in #2. This allows your code to validate and also be condensed. Both good things.

Thank you Tony White.
Enjoy!

PHP: If (equal to AND not equal) – eliminate form spam without using a captcha

Category : Featured, Great Tutorials, Slick Code, Technology

Just learned a great function of PHP thats already made my forms a lot better. A while back I wrote an article about eliminating form spam without captchas by using css to hide a text input box for bots to fill in. By giving the input box a legit sounding name like “email” the bots fall for the trap and the php handler discards their form entry results.

The only problem was that I still got blank entries every now and again from people using their back button, or search engine spiders. You could also trick the validation script by surfing with java turned off . And while I still dont know exactly which one of the above was the cause I have an ultimate solution.

The equal to and not equal to feature in PHP.

Instead of:

if ($test == "") {
mail($mailto, $mailsubj, $mailbody, $mailhead);
}

We use:

if ($test == "" && $email != "") {
mail($mailto, $mailsubj, $mailbody, $mailhead);
}

This little change not only checks to see that there is nothing in the hidden field but also checks to see that there IS something in the email field. As the email is required this is nothing new, but will dump all the blank entries I’ve been getting.

FYI:
&& = = and
!= = not equal to

Cross Brower Css Footer -tested and true

Category : Great Tutorials, Slick Code, Technology

For one of my soon to be released projects I was asked to create a footer background image that was stuck to the bottom of the website or broswer window. Finding a cross browser css footer was a pain, and inplementing it took some trial and error with the numbers but it worked!

Thanks going to:

http://ryanfait.com/sticky-footer/

For his great tutorial on the subject, and his solution.

A more graphical tutorial can be found here: http://fortysevenmedia.com/blog/archives/making_your_footer_stay_put_with_css/

Form spam: BE GONE!

Category : Coding and Database, Great Tutorials, Slick Code, Technology

I started getting emails last month from the forms on one of my client’s websites. The spam came as a long string of links in the comments section of one of the forms. The idea for this type of spam is, I think, to boost search engine ranking by increasing the clicked rate to your site. It is easy enough to detect and delete but still, its quite a pain to delete 10-12 emails a day. Not to mention there is a more malicious form of form spamming that I was lucky enough not to have been attacked by where the spammer inputs php code into the form fields which tricks your mail server into sending bogus messages from your return address. This has had the effect of some sites being blacklisted from search engines for spamming, but I hear that google and others are going to be lenient on this in response to the rise in form spam in the recent months.

So there was the worst case scenario and to avoid it all together we needed to add some sort of form validation. Client side java script could be used, but if the spammer simply turned off java script, we’d me back to a naked form, so although useful to make sure humans are using real email addresses (with the @ symbol) it would be useless to stop a bot.

The next step would be to use a captcha, but I hate these things and good OCR software can read them better then people with poor eye sight so this isn’t the best answer either. New captchas are evolving into fill in the blanks, picture description, and general questions (“whats the letter after b?”). Machines will not understand the question and thereby cannot guess the answer.

But still, this is slightly intrusive because it requires the user to think. Sometimes that’s enough to put people off. I wanted a solution that eliminated bot generated spam without encumbering the real users at all.

My solution was code the PHP mailto into an if statement that checked the value in a hidden field. If anything had been entered into this field then we can deduce that it was not filled out by a human (who would never see this field) so the request fails the php if statement and the mail command is never fired.

However, the PHP code will still look like the page email was sent. This is important as it lets the spammer think everything has worked. After putting this into play spam on our forms has effectively ended. I say effectively because I read somewhere that some people actually sit an copy and paste this sort of junk into forms by hand. What a waste. No one reads it anyway.

I just wanted a solution that freed up my client without affecting his customers.

The HTML/CSS looks like this:
<input style=”display:none” type=”text” id=”email” name=”email”>

PHP:
$test = $_POST["email"];

if ($test == “”) {
mail($mailto, $mailsubj, $mailbody, $mailhead);
}

Currently I’m working on a great book by: Steve Krug called Don’t Make Me Think.

Update: August 1st, 2008:
To eliminate the “random blanks” I got from users pressing the back button and non javascript browsers I modified the above code to include a few more conditions. Read the next article on using the IF equal to AND not equal to function in php to find out more.