Software Companies, Don’t Sabotage Your Long-Term Success!

Written by V. Berba Velasco Jr., Ph.D.


Continued from page 1

Employers should also remember that good programming style is not something that’s easily taught. Any competent programmer can learnrepparttar mechanics of language syntax and function calls; however, someone who understands little aboutrepparttar 107615 artistry of structured programming or proper object orientation is unlikely to master these things onrepparttar 107616 job. I’ve seen this happen (or rather, fail to happen) time and again. This, despiterepparttar 107617 abundance of books and journals which discuss this matter at great length.

I also think that companies should pay greater attention torepparttar 107618 prospective employee’s technical writing skills; after all, external documentation (e.g. user manuals, design documentation) can be critical torepparttar 107619 software’s maintainability. Besides, in my experience, programmers who write well in English are more likely to write software too. And why not? Programming languages are ultimately just that—languages. Someone who can express himself well in English is more likely to communicate clearly and effectively in his source code as well.

For these reasons, I urge any company that’s hiring a programmer to ask incisive questions about an applicant’s coding style. How does he name his variables? How many lines of code should a function occupy? Does he use global variables, and if so, when? What kinds of books has he read on programming style? Ideally, companies should also ask for samples of an applicant’s source code and technical documentation, to verify that these lessons are put into practice. This takes a little extra effort, but it can help a company avoid sacrificing long-term success forrepparttar 107620 sake of dubious short-term gains.

V. Berba Velasco Jr., Ph.D. is a senior electrical and software engineer at CTL (Europe, China). where he serves with great pride. He has seen how proper attention to software usability, maintainability and elegance can spell the difference between mediocre products and great ones.


PIM Team Case Study: Creating Text Effects With PHP and GD

Written by Bobby Handzhiev


Continued from page 1

if(table=='shadows') { var content=""; var y=810; }

document.getElementById('tabler').style.pixelLeft=mouseX; document.getElementById('tabler').style.pixelTop=y; document.getElementById('tabler').style.visibility='visible'; document.getElementById('tabler').innerHTML=content; } Of course, oncerepparttar user selectrepparttar 107614 desired color we had to hiderepparttar 107615 pallette: function setColor(elid,color,fromid,shc) {

document.getElementById(elid).value=color; document.getElementById('tabler').style.visibility='hidden'; }

Thus we created nice palettes which appear and disappear on a single click and don't take much space onrepparttar 107616 screen.

- Drop Shawdows The decals offered hasrepparttar 107617 ability to have a drop shadow added so we had to add this option torepparttar 107618 online builder. PHP however didn't offered a nice function for that. We created a procedure which drawsrepparttar 107619 texts twice - oncerepparttar 107620 original 100% saturated text and oncerepparttar 107621 shadow with a percentage ofrepparttar 107622 color and appropriate displacement. Of courserepparttar 107623 shadow was drawn onrepparttar 107624 image beforerepparttar 107625 main text. @imagettftext($img, 20, $gr[$i], $x+$dx, $ys[$i]+$dy, $scolors[$shadowcolor], "fonts/".$_POST['fonts'],$word[$i]);

- Arcs The main problem came when we had to 'rotate'repparttar 107626 texts thru arcs. First we created perfect Bezie funtion which to drawrepparttar 107627 curves and adjustrepparttar 107628 letter above them. But what a surprise -repparttar 107629 curves looked perfect alone, but when we adjustedrepparttar 107630 letters above them they seemed rough. After studying this problem we realised thatrepparttar 107631 rough screen resolution andrepparttar 107632 disability to antialiserepparttar 107633 images wouldn't allow us to create nice arcs. We were standing against insoluble problem. We decided to create few arcs with a graphical software (CorelDraw) and to see what could be wrong. We noticed that Corel's curves were looking great after they are manually adjusted. However you can't just leaverepparttar 107634 program to create perfect curves automaticly. A human eye was needed to judge when a curve looks right and when not. We got a totally different direction. There wasn't an universal function to help us. The solution we found was to 'manually' adjust each letter. We created a procedure with cases which were adjusting each letter onrepparttar 107635 appropriate place and with appropriate rotation depending on how long wasrepparttar 107636 text. It worked! We created 2 arrays for each arc type - one array withrepparttar 107637 positions and one array withrepparttar 107638 rotations. The rest was simple: if($arctype) { $start=(35-$l)/2; if($start%2) $start+=1; $gr=array_slice($gr,$start,$l); $ys=array_slice($ys,$start,$l); }

if(!$arctype) { $ys=array(); $gr=array(); //makingrepparttar 107639 arrays for($i=0;$i<$l;$i++) { array_push($ys,50); array_push($gr,0); } }

You can go onrepparttar 107640 atec's site and tryrepparttar 107641 arcs we achieved (http://atecsigns.com/decal/step_1.php). Results Now A-tec Sings's web builder creates perfect decals with graphs, calculatesrepparttar 107642 price and allows you to addrepparttar 107643 decals to your shopping cart and chgeckout (the shopping cart software is also created by PIM Team Bulgaria). The builder allowsrepparttar 107644 visitor to createrepparttar 107645 desired decals with any color, dropped shadow, background and shape, to preview it and to calculaterepparttar 107646 cost for different sizes and quantities. The website and builder were promoted with massive radio advertising company. At that time it wasrepparttar 107647 only decal builder which allowed creating texts arround arcs. Conclusions - Use GD to create text effects - Do not forget that you can create you own functions for what GD does not offer - Do not always search for math perfect formulas. The graphical effects are intended torepparttar 107648 human eye - Load fonts inrepparttar 107649 server - Use javascript and hidden layers to achieve great flexibility

Bobby Handzhiev is senior developer in PIM Team Bulgaria


    <Back to Page 1
 
ImproveHomeLife.com © 2005
Terms of Use