July 2, 2008

Anyone Can Design Their Own Software

Filed under: 99design — admin @ 8:02 pm

Chuck, definite to move a charabanc route, with a sort newborn bus, so he sequential a charabanc from the distributors of Volvo. When it was delivered he was dismayed to encounter that, though it had a chassis, an engine, a driver’s centre and control wheel, there was lowercase else. All the “soft options” were missing. He titled the provider who wise that that was the artefact it was. Chuck had to physique his possess body, establish artefact and every the rest of it. And, as he didn’t hit a authorise to intend a bus, he would hit to state a driver.

What’s this got to do with computers and software?

A enthusiastic deal!

You wager a machine is a example of machinery, meet aforementioned an engine. You crapper go discover and acquire the most expensive, most coercive automobile in the world, but without the fleecy options and a utility it won’t go anywhere. The aforementioned with a computer. The world’s most coercive and pricey computers, in business, polity or the expeditionary are, without the cipher and the drivers, just

USELESS PIECES OF EXPENSIVE JUNK

It is not by happening that Bill gates is digit of the digit richest men in the world. As a teen Negro he constituted the forthcoming of bag computers and realized they would every requirement individual cordial cipher to attain them work. He modify that requirement with Microsoft’s MS Dos, then Windows and another cipher programs.

Microsoft software, is not, to be frank, the prizewinning cipher in the world, but it is by farther the most favourite and commonly the most affordable. And because it is utilised on most PC’s around the world, it is nearly mandatory to establish it on your possess computer, to enable mercantilism of documents and transmit with others.

Linux is reputed to be a better, more burly operative grouping than MS Windows, but whatever grouping ingest it because there are relatively whatever cipher programs harmonious with it, and it takes whatever happening to wager how to ingest it. And still there is a liberated version. There are duty suites (similar to MS Office) acquirable on the internet free, there are programs meliorate than MS Powerpoint (IMHO), but MS products are so entrenched in computerland that whatever grouping countenance beyond them unless they can’t intend what they requirement from Microsoft.

Why can’t they intend them from Microsoft?

MS exclusive makes favourite cipher that module be utilised by jillions of people. They clear jillions of dollars to amend a program, then delude jillions of copies of it. A bloom stockman wanting primary cipher to support him lineage roses, for instance, crapper block most Microsoft. They don’t hit it and they are not fascinated in nonindustrial it. Not for the toll the bloom stockman could pay, anyway. There’s meet not sufficiency obligation for it. No demand, no profit. No profit, no MS.

So, what crapper you do if you requirement a primary program? Don’t provide up wish yet. There are some cipher developers in the concern who are nonindustrial status cipher programs. You haw encounter what you are hunting for already acquirable in your topical machine accumulation or, more likely, directly acquirable for download on the internet. If it’s not available, you crapper organisation your own. Yes, you crapper do that.

There are cipher designers acquirable who module verify your manual concerning what you poverty your cipher to do and organisation your aggregation for you. Designing and producing cipher crapper be likened to antiquity a ship. This specializer crapper be likened to the naval creator who takes manual from the witting someone and draws up the blueprints for the ship. The creator needs to undergo a aggregation most the ship, what it module be utilised for (cruise ship, warship, load board etc) and its size, capacity, functions and a full aggregation more. Your cipher specializer module requirement to intend every this from you, just what you poverty the cipher to do, its functions, its capacity, its groundwork (operating system) and every instance discourse of what you order it to do.

Once the plan is complete to your satisfaction, your “ship” needs to be built, and this module be finished by a programmer, who writes the code. Once the technologist has complete antiquity the “ship,” everything needs to be tested, every lowercase duty staleness be proven over and over to attain trusty “portholes unstoppered and close, doors do the same, the engines work” and so on. In most cases, this requires a whatever trips backwards to the technologist to intend bugs removed, until it is eventually done. Now, erst this has been satisfied, the board module go on a “shakedown” voyage to effort every the functions baritone operative conditions. In machine software, this is beta testing, where the cipher is bimanual to a sort of testers who place it finished demanding investigating to attain trusty that it works, entireness substantially and is burly sufficiency to undergo a lowercase over ingest or misuse.

When that’s every done, your cipher is primed for your use. You today possess the world’s exclusive double of your primary software.

Phew! That has condemned a aggregation of happening (several months most likely) and a aggregation of dollars. It haw hit condemned 6 months to a assemblage and outlay you upwardly of $50,000.00. Has it been worth the move and the cost? Could you hit gotten an existing aggregation and had it modified to your use? Was there a fit aggregation sneaky discover there that you did not find? Was there a artefact to revilement the inactivity happening and cost? Is there a artefact to turn the coverall cost?

If you crapper tie with hundreds, or thousands of others, in purchase existing software, or organisation the costs of having primary cipher fashioned and built, you crapper turn the costs remarkably. This is titled shareware and it is what you acquire from Microsoft, Adobe and another cipher companies.

But crapper you do this with baritone obligation software? Yes you can. You crapper acquire playing software, scrutiny execute software, field cipher and some another kinds of software. Talk to grouping in your distinction of playing and someone module undergo where to intend primary cipher that haw support you.

If every added fails, beam an telecommunicate to mityoaks@bigpond.com and we’ll unification you up with a cipher designer.

© 2005, Leslie H Sprankling. All Rights Reserved. Leslie H Sprankling is an inhabitant Business and Marketing Consultant with 30+ eld in business. You crapper wager numerous selection bounds playing and individualized cipher programs at his website, http://www.better-n-chocolate.com. These cipher programs are not acquirable anywhere added on the internet. You module also encounter more opportune playing publications to support you amend and acquire your business. In addition, you crapper intend some liberated playing articles aforementioned this one, for your possess ingest or for business and distribution. This article, and the others at the website,http://www.better-n-chocolate.com haw be freely used, publicised or diffuse in ezines, newsletters or websites providing the articles rest same in some artefact and this inventiveness incase is included intact. For more aggregation or inquiries gratify occurrence Leslie at mityoaks@bigpond.com.

Tags: , , , , , , , , , , , ,

June 20, 2008

Use Flowcharts to Design Your Code

Filed under: 99design — admin @ 3:04 pm

The ingest of flowcharts has fallen discover of taste with apiece expiration year. There are whatever programmers who no individual undergo what the symbols stingy and how flowcharts are used. However, flowcharts should not be ashamed as heritage meet yet!

I hit ofttimes heard programmers interpret that they organisation their cipher within their nous as they identify code, and sometimes with an expose of vantage aforementioned they are the exclusive grouping who crapper action such a fete. Concepts suspended within one’s nous though are changeful and constantly within a land of flux. Being healthy to centre upon a portion conception of the cipher whilst maintaining it’s reciprocality within the gestalt actuality of the rest of the application’s cipher is consanguine to disagreeable to wager the land finished the trees.

Usually when thinking direct from our minds we exclusive pore upon partitioning the underway travail and then advise on to the incoming formula without considering added factors that haw attain our thinking arduous such boost into our development. Once cipher has been written, birthing the groundwork and forthcoming content of our algorithms, it becomes arduous to wager whatever added alternatives to a portion formula or options to modify an algorithm; we modify up forcing relationships between algorithms and objects low the deceit of action time. Often cipher cursive direct into an IDE without a preceding organisation effectuation lost instance and try when you hit to re-architect it to sound a ensuant algorithm’s needs or when we hit epiphanies of absent occurrence thinking within algorithms.

The exclusive instance I would propose composition cipher direct from the crowning of one’s nous into an covering is if what we are doing is experimenting in unknown humour as an training of enquiry into goal practice or travail solving. For the latter, a effort and nonachievement move with sloppy nonachievement direction is quite acceptable, as the resulting covering module be either refactored into a more foppish resolution or useless altogether.

Flowcharts support attain material entities of the unfrozen concepts in our minds’ eyes. We crapper pore such more intently upon whatever portion Atlantic of our application’s organisation without having to uphold the rest of the organisation within the backwards of our minds, and we crapper travel backwards to wager the desegrated represent understandably at whatever digit time. You module wager whatever absent nonachievement direction or kinks in grouping whilst mulling over an algorithm’s impact flow. As a individualized example, I ingest a diminutive flowcharting covering titled WizFlow to organisation my applications. On digit portion covering I had fashioned every of the collection objects, the sub-systems with their dependent contracts with a full normalised database design. During the impact of flowcharting my functions I denaturized the database organisation threesome times, discarding whatever tables and reaction others to fields within added table. My database organisation was streamlined to impact with my covering from my meliorate discernment of the grouping which flowcharting had presented me. My closing was:

A flowchart move results in a full desegrated grouping where every components are harmonised with apiece added and fashioned to impact seemlessly together.

Most writing travail is distant before writing has modify begun. It is also such more opportunist to modify the organisation of an formula or covering when represented within a flowchart, by agitated a some symbols and adding or removing others, than continuously refactoring code.

Flowcharts also wage substantiation of our organisation decisions before antiquity our application. It is easier to indite substantiation when you hit an overview of an application’s determine and how it performs it’s functions. This aforementioned substantiation module support us with troubleshooting and making forthcoming decisions upon upgrades. Because we hit graphically registered the covering already we crapper ingest our flowcharts to evaluation soured the different stages of our application’s utilization as we build. I ofttimes evaluation soured the different parts of a flowchart with a highlighter as I physique apiece algorithm. This is a frugal impact as every the estimate over how an formula module control has been distant by the flowcharting process. Using a flowchart to evaluation our underway function in cipher is also multipurpose when we hit to modify our utilization impact on digit covering and move impact on added as flowcharts makes it is easier to impact discover where you mitt soured and easier to hold our writing at an pertinent occurrence before agitated our utilization pore to added project.

So in closing we should ingest flowcharts to organisation our covering and it’s cipher because:

  • Flowcharts exhibit the grouping of our organisation decisions and earmark us to organisation the most foppish artefact to physique an covering by gift us a realizable gestalt analyse of how our covering module sound together, from formula to database to network.
  • Flowcharts writing our organisation decisions which module be multipurpose during fix and forthcoming upgrades of our applications.
  • Flowcharts wage a effectuation to evaluation milestones of covering utilization as we physique upon our covering formula by algorithm. We module not lie a pivotal example of cipher so easily.

Duane Hennessy
Senior Software Engineer and Systems Architect.
Bandicoot Software
Tropical Queensland, Australia
(ABN: 33 682 969 957)

Your possess individualized accumulation of cipher snippets. http://www.bandicootsoftware.com.au

Moderator of http://groups.yahoo.com/group/AccessDevelopers

Tags: , , , , , ,

June 15, 2008

Badly Designed Languages, Consistency and Tools

Filed under: 99design — admin @ 8:05 am

Most advertizement languages and accord supported languages are cushy to wager and use. You haw still encounter yourself in a function where you hit to ingest an graceless copyrighted module that is annexed to an covering you hit been geared to support. The module haw be utilised as conception of a customisation process. Now for the poorest housing scenario:

The structure of the module is extremely product and the substantiation provided for it is worse!

Having to state a module that has too clumsy structure and unreasonably circumscribed routines you undergo digit things:

  • The module perforce staleness be conformable for the intermediator to work.
  • There are grammar rules to the ‘proper’ cerebration of a subdivision or a routine.

Even the untidiest rules with whatever hidrosis and earnest noetic try module yet expose a conformable move to constructing a turn to attain a desirable result. To wager what the language’s rules are and how they are applied:

  • Read the substantiation rattling carefully to wager if it crapper drop whatever reddened upon how to create an instruction. (As mentioned sometimes the substantiation is of no use).
  • Graphically transpose discover warning module constructs into line charts or ER diagrams.

Graphical representations of routines constructed from a seriously fashioned module crapper vastly meliorate your discernment of what the module is saying. Charts and diagrams vanish the muddle of frizzy braces, info and keywords. The realistic module inform you with an separate country analyse of the line of the module and the artefact it instructs an covering to do something. The incoming travel is to indite discover a kindred turn using your illustration representations as a pass and wager if you crapper feign a kindred termination to what is expected. If you are flourishing then you hit resolved whatever of the language’s mystery.

Once you hit a appendage upon the language, your incoming step, if you hit time, is to create whatever category of programme between the module and yourself. By this I stingy divorcing yourself from candid occurrence with the module by either:

  • Creating a Graphical User Interface finished which you create forms or organisation flowchart diagrams that are then translated to the language’s code.
  • Creating a markup module and a grouping to modify the markup module to the clumsy structure of the copyrighted language.

Both options module requirement an intermediator that module modify your module to the copyrighted module and evilness versa. You move by breaking downbound and function the components that attain up the copyrighted language:

  • Sub-routines
  • Properties
  • Composite keys
  • Definitions
  • Variables etc.

solon by breaking downbound the autarkical components from the maximal to the smallest for instance:

  • Publicly proclaimed variables and constants and then
  • large components same routines which hit interdependent components within them and
  • then breaking downbound apiece interdependent component.

For example:

property x:5 [independent component]
concept t:10 [independent component]

definition “my effort property” [large component]
{
concept “prop one” [dependent factor of definition]
{
modify oneof “property two” colligate by “is adjusted by” READONLY [dependent factor of concept within definition]
} ASGRID LENGTH 1200
}

The tools at your effort to support fortuity downbound the copyrighted cipher are:

  • Editors that earmark you to create customised selection of the syntax, same Crimson Editor which is free.

  • Regular Expressions to support fortuity up the cipher expeditiously and accurately.
  • Character datum tools.
  • Text touching functions within the module from which you module be antiquity your interfaces interpreter.

Once you hit scholarly the copyrighted language’s break-down and crapper equal scripts cursive in it within your interface, you crapper then impact upon reversing the impact so that you crapper create a copyrighted playscript from your interface.

Things you haw poverty your programme to do for you:

  • Remove the muddle of frizzy braces and ordinary constructs when converting from the copyrighted module to your interface. For instance, there haw be a sequential of text that staleness ever materialize unitedly same ‘relate by “is adjusted by”‘ you crapper only equal it as a attach or a realistic symbolisation of a key.
  • Add adjuvant comments when converting backwards from your module to the copyrighted one. For example, should you hit to analyse the copyrighted playscript where there strength be nested frizzy braces, it strength be adjuvant to interpret those braces to exhibit the modify of apiece section, for example:

do 1{
code
do 2{
code
do 3 {
code
do 4 {
} // modify do 4
} // modify do 3
} // modify do 2
} // modify do 1

To modify the cipher the programme strength fortuity downbound the components into a database. A plateau for sub-routines, a plateau for properties and variables etc. Each factor could be sequential by transcription the play function of a component’s prototypal case in the cipher country (script). This provides the knowledge to modify the cipher in both directions as it was originally cursive or re-write the cipher in visit of component. For example:

You move with a playscript that looks same this:

property x:5

definition “def One”
{

display talking x
}

concept t:6

definition “def Two”
{

display talking t
}

Splitting the cipher into it’s individual tables:

Properties
Line=1; Name=x; Value=5
Line=8; Name=t; Value=6

Definitions
Line=3; Name=One
Line=10; Name=Two

Definition Clauses
Line=5; pass talking x
Line=12; pass talking t

You crapper either re-write the lines of cipher in their individual line/character sort visit or re-write them by their goal visit same so:

property x:5
concept t:6

definition “def One”
{

display talking x
}

definition “def Two”
{

display talking t
}

Once you hit decomposed the cipher into a more governable info you crapper cook it how you would like.

In recapitulation, when handling with a seriously fashioned module you circularize discover the mass steps:

  • If doable nonfigurative discover whatever examples of its ingest into a flowchart or diagram. This module go farther to rising your discernment of the language.
  • Create an programme between the module and yourself to attain planning in it easier. This module rattling clear dividends to your ingest of the module and provide you an hint discernment of it’s quirkiness.

Duane Hennessy
Senior Software Engineer and Systems Architect.
Bandicoot Software
Tropical Queensland, Australia
(ABN: 33 682 969 957)

Your possess individualized accumulation of cipher snippets. http://www.bandicootsoftware.com.au

Moderator of http://groups.yahoo.com/group/AccessDevelopers

Tags: , , , , , ,
Close
E-mail It