1. Skriptit ja dokumentit ovat normaalissa tiedostojärjestelmässä juurenaan: ~/OMATSKRIPTIT. 
- mikäli IDE:n aloittaa nollilta tarvitaan tiedostot: "~/OMATSKRIPTIT/IDE BASH-skripteille, näppäinversio" ja: ~/OMATSKRIPTIT/FUNKTIOKIRJASTO/valikkonäppäimille ja: ~/OMATSKRIPTIT/FUNKTIOKIRJASTO/IDEfunktiot1 ja: ~/OMATSKRIPTIT/FUNKTIOKIRJASTO/IDEfunktiot2 .
- mikäli IDE:stä haluaa eroon niin senkun poistaa kansion ~/OMATSKRIPTIT niin kaikki poistuu ja jäljelle ei jää mitään. Eikä IDE tee koskaan mitään muutoksia muualla kuin omassa kansiossaan.
- toistaiseksi vain näppäinversio on uutta mallia.

2. Ensimmäisellä ajokerralla IDE muodostaa tarvitsemansa tiedostopuun. Tiedostopuussa liikutaan niinkuin normaalistikin kun liikutaaan ilman hiirtä: nuolinäppäimillä ja enterillä.

3. IDE:n tiedostopuu jakautuu "siihen osaan jossa normaalisti toimitaan" ja arkistoon. Arkistossa ovat dokumentit ja versionhallinnan tiedostoja skripteistä, teksteistä ja dokumenteista.  

3. Tiedostopuuta voi muokata sellaiseksi kun haluaa mutta alkuunsa kannattanee toimia ehdotusten mukaan sillä kaikkea ei voi muuttaa. 

4. Tiedostopuun tiedostot ovat tekstejä joista jotkut voivat olla skriptejä mutta usein ne ovat vain tekstejä - esimerkoksillllll ohjetekstejä. Skriptien ei tarvitse olla toimivia.

5. Dokumentti on muuten samanlainen kuin "ohje-teksti" mutta sen sijaintipaikka on arkisto. Jos skripti, teksti tai kansio on dokumentoitu niin dokumentti on samalla nimellä oleva laaja kuvaus.  

6. Kaikki skriptit voivat käyttää mielivaltaisen monia kirjastoja. Kirjastossa funktiot on ryhmitelty toimintatarkoituksen mukaan nimettyihin tiedostoihin. 

7. Kansioiden ja skriptien nimien pituutta tai merkkivalikoimaa ei ole rajoitettu. Hyvä nimi olisi esimerkoksillllll: orpojen etsiminen kirjastosta ja mahdollinen poistaminen .
- kuitenkin on syytä välttää yli puolen-sivunleveyden pituisia nimiä, kovia lainausmerkkejä, hipsuja, /-merkkiä, $-merkkiä nimen alussa, ^-merkkiä nimen lopussa ...  
- esimerkoksillllll nimi:  *"!:!"*  toimii kyllä, mutta kaivaa verta nenästään jos sellaista käyttää.

8. Kansioden nimissä on ainoastaan suuria kirjaimia ja tiedostolistauksissa kansiot ovat aina alussa. Skriptien nimissä kannattaa käyttää mahdollisimman montaa pientä kirjainta jotta ne erottaisi paremmin tiedostolistauksessa.

9. skriptiä editoitaessa editoriin tuodaan myös omille lehdilleen 6 tuoreinta versiota arkistosta ja kaikki skriptin tarvitsemat kirjastot. teoriassa ainoastaan skriptiä editoidaan ja muita vain luetaan tai kopioidaan niistä jotakin, mutta hätätilassa kaikkia voi editoida.
- ennen editointia tarkistetaan onko kyseessä skripti, ja jos on niin se ajetaan tulkista läpi ja syntynyt virhetiedosto esitetään myös editorissa.
- kun skriptiä yritetään ajaa niin mikäli tulkki antaa virheitä mennäänkin automaattisesti editoriin editoimaan skriptiä.

10. Jokaisesta skriptistä voidaan tehdä dokumentti. Dokumentti löytyy samalla nimellä kuin skripti. Dokumenttien editointi on samankaltaista kuin skriptienkin; versionhallintaa sovelletaan mutta virheviestejä ei kylläkään tehdä.

11. Jokaiselle kysymykselle ylläpidetään omaa historiatiedostoaan. Historiaa voidaan käsitellä ihan samoin kuin järjestelmän historiaa yleensäkin (esimerkoksillllll ctrl-r on "reverse-search"). 

12. Valittavat esitetään aina yhdellä sivulla - sivu jaetaan sarakkeisiin kun valittavia on paljon. Jos joutuu yhdellä sivulla esittämään paljon kookkaita valittavia tulee näytöstä epäselvä, joskus kovin vaikea käyttää. Mutta valinta on nopea tehdä kunhan valintamenetelmään tottuu. 

13. Ajettavilla skripteillä ei tarvitse olla suoritus-oikeutta joten ilman skriptiajuria skriptien ajaminen on hankalaa eikä kaikilta edes onnistu. Ja skripteiltä voidaan myös poistaa ensimmäiseltä riviltä: #!/BIN/BASH jolloin niitä ei vieraat välttämättä skripteiksi tajuakaan - ja skriptien peräliite *.sh jätetään pois.

14. Mitään tehtyä ei hylätä. Yleensä tekosensa löytää kun menee editoimaan skriptiään tai dokumenttejaan, mutta mikäli työt on tehty kauan sitten joutuu niitä ehkä kaivamaan arkistosta. Jotta roskaa ei tulisi ihan tavattomasti niin mitään ei talleteta samanlaisena kahta kertaa, voit siis rauhasssa katsella sillä silloin ei tapahdu mitään. 
 
15. IDE itsessään ei tee muuta kuin järjestää kaiken sujuvaksi ja lisäksi kerää pyydettäessä sellaisia asioita joita käyttäjä tarvitsee; kerätyt tiedot kannattaa aina tallettaa, tutkia, kokeilla - ja lopuksi dokumentoida. IDE alkaakin olla käyttökelpoinen vasta kun siihen on kirjoitettu liitetiedostoja muutama mega. Toistenkin tekemiä skriptejä ja dokumentteja voi liittää IDE:en, mutta ehdottomasti vain omaan kansioonsa. Sillätavoin tehdystä IDE:stä tulee kokoajan käyttökelpoisempi sillä olet silloin herra omalla kartanollasi.

16. IDE:ä voi editoida itsellään, se on jopa suositeltavaa sillä onhan mukavaa kun senkin kaikki versiot ovat tallessa. Kun IDE on editoitu täytyy editoitu IDE ajaa (=paina enter kun IDE on valittuna) jotta muutokset tulevat heti voimaan. 

17. poistaessaan jotakin IDE ei tuhoa sitä vaan siirtää järjestelmän roskakoriin, josta sen voi halutessaan palauttaa.

18. Linuxinkin ominaisuuksia voi usein käyttää: esimerkoksillllll haku saattaa vain tuoda editoriin ne tiedostot joissa hakutermi on ja kun tiedosto on editoirissa kannattaa muunmuassa käyttää "ctrl-f"-hakua. 

19. Kaikkien ominaisuuksien tulee löytyä helposti. Nopea käyttö kylläkin edellyttää pikavalintoja, mutta mahdollisuuden niiden käyttämiseen täytyy olla lisänä.

20. IDE:en voidaan liittää tiedostoja tai tiedostoryhmiä, vaikka kokonaisia verkkosivuja. Liitos on viisainta tehdä omaan kansioonsa, sillä niitä ei eroittaa muusta IDE:stä. Kansio olisi viisainta jopa dokumentoida.  
 
------------------------------------------------------------------------------------------------------------------------------------------------
IDE:n täytyy osata:

- valita toimenpiteiden kohteena oleva skripti muutamalla näppäinpainalluksella.
- siirtyä napinpainalluksella koodaukseen, dokumentointiin, luomaan uutta, tuhoamaan vanhaa, hakuun, uudelleen nimeämiseen ... kaikki on muuten tehtävä IDE:llä eikä jollain ulkopuolisella super-ohjelmalla, sillä super-ohjelmat poistavat yhteen-sidotuista vain jotakin ja samalla tuhoavat ne sidokset. 
- pitää kaikesta täydellistä historiaa ja tarjota yksinkertainen paluu vanhaan. 
- kyetä antamaan tukea missä asiassa hyvänsä. Avustus-tekstistä saa täydellisen vain itsetekemällä, mutta kyllä maailmaltakin löytyy ihan hyviä - tee linkki tai kopioi.
- skriptejä täytyy voida lisätä kansiojärjestelmään mihinhyvänsä yksitellen tai kansio-järjestelmä kerrallaan vaatimatta nimeämään mitään uudelleen.
- säilyttää kaikki, virheetkin. Mitä hyvänsä voi kyllä tuhota, mutta se täytyy määrätä erikseen.
- käsitellä itseäänkin samoin.
- aloittaa kaikissa tehtävissä samasta valinnasta mikä edellisellä kerralla valittiin vaikka lopetettaisiin vahingossa tehtyyn boottaukseen.
- tarkoitus on että täydentäisit ohjeita sillä: 'me kaikki olisimme suunnattoman tietoviisaita mikäli muistaisimme edes sen mitä itse olemme kirjoittaneet'. Ohjeisiin voi huoletta tehdä lisäyksiä ja muutoksia sillä sitä alkuperäistäkään ei hävitetä vaan voit palata siihen milloin hyvänsä. 
- poistaa backup-tiedostot ja nollakokoiset tiedostot valinnoista sillä ne ainoastaan sotkevat.
- pistää muistiin missä ollaan, joten vaikka vahingossa boottaisiin keskenkaiken niin käynnistettäessä IDE uudestaan alkaa se siitä paikasta johon edelliselläkerralla jäätiin. 
 
- skripteistä vain pienen osan kerkiää tekemään itse. Kuitenkin ainoastaan itsetekemäsi skriptit toimivat koneessasi moitteetta ja toisten tekemät skriptit toimivat joskus kummallisesti. 
- toisten tekemiä skriptejä ei kannata yrittää parannella sillä toisen tekemän skriptin korjaaminen kestää usein kauemmin kuin uuden tekeminen. 
- kun tekee skriptiä niin vain itsetehdyistä skripteistä voi kopioida isompia lohkoja ja toisten tekemistä skripteistä voi kopioida vain ideoita.
- muuten kopioimisen tekeminen mahdolliseksi on syy miksi ohjelmointikuria tulee noudattaa pilkulleen; skriptistä voi kopioida toiseen skriptiin ilman vaivalloisia muutoksia vain kun ohjelmointikurit ovat molemmissa skripteissä samat. Ohjelmointikuri on itseasiassa sama kuin: tee samankaltaiset asiat aina samallatavalla; esimerkoksillllll voit sopia itsesi kanssa että muuttujien nimissä ei ole koskaan isoja kirjaimia.
- mutta kopiointi onnistuu vasta kun löytää kopioitavan ja se vaatii hyviä hakumoottoreita. Linuxin hakumoottorit ovat erinomaisia ja skriptiajuri osaa käyttää niitä. Ja netistä kun etsii niin kannatta käyttää googlea - sillä vaikka se ei löydäkään läheskään niin hyvin kuin linuxin hakumoottori niin onhan se verrattomasti nopeampi.
- ajokelvotonta ei yritetä ajaa eikä sitä voi dokumentoida.
- tekstiä ei voi dokumentoida.

- toisilta kopioidut skriptit eivät useinkaan toimi, ne ovat vanhentuneita, täynnä pahoja virheitä ja niistä kelvollisten skriptien valikoiminen on erittäin työlästä, mutta toisaalta niistä löytyy ideoita mihinvain. Skriptivarastoon kannattakin kopioida paljon skriptejä eikä kopioitaessa kannata paljoakaan valikoida. Jotta skriptejä käytettäessä saisi jonkinlaisen kuvan niiden luotettavuudesta  niin skriptin ollessa valittuna siitä kerrotaan montako kertaa sitä on editoitu, onko se siis tarpeelliseksi tunnustettu.
- koska käytetään kirjastoja ei koodia tarvitse aina edes kopioida
- skriptiajuri suosii uusien skriptien tekemistä sillä silloin skriptit tulee toiminnallisesti tarkistettua, dokumentoitua ja sekä
aloitettua ylläpitää ARKISTOA (=versiohistoriaa). Siten kun huomaa skriptiä tehdessään että jo monta versiota sitten on eksynyt harhapoluille niin voi siirtyä ARKISTO:on kokeilemaan mikä oli se versio joka toimi edes jotenkin ja palata siihen tai noutaa siitä osia.
- kun editoidaan skriptejä tai niiden dokumentteja niin alkuperäkappale ARKISTO:idaan aina muulloin paitsi silloin kun pengotaan ARKISTO:a. Näin toimitaan jottei ARKISTO sotkeentuisi. 
- järjestelmän hoitoon tarkoitetut skriptit ovat väärinkäytettyinä erittäin vahingollisia eikä käyttö-valtuuksien rajoittaminen riitä käytön estämisessä. Skriptiajurin skripteillä ei tarvitse olla suoritusoikeutta, nimen peräliitteen ei tarvtse olla sh ja kun jättää rivin: #!/bin/bash pois niin sitä ei heti skriptiksim mielläkään. Joten jos ei voida käyttää skriptiajuria niin skriptejä ei ajella vaikka sudo-salasana tiedettäisiin.  
- skriptiajuria käyttäessäsi voit unohtaa komentorivin. Itseasiassa käyttäjän ei tarvitse edes osata kirjoittaa.
- kun skriptiä aletaan muokata skriptiajurilla niin editoriin haetaan myös muutamia skriptin edellisiä versioita ja kaikki ne kirjastot joihin skripti viittaa. 
- kaikkea voi siirtää toiseen paikkaan tai hävittää kokonaan. Mikäli jotakin hävitetään niin hävitetty siirtyy roskakoriin josta hävitettyjä voi tarvittaessa palauttaa kunnes roskakori tyhjennetään. Skriptiajurilla poistetut eroavat hiukan muilla tavoilla poistetuista joten näet jo roskiksen sisällöstä onko se skriptiajurista peräisin.
- yhden skriptiajurin tiedot voi synkronoida jossain muussa koneessa olevan skriptiajurin kanssa. Mutta synkronointi on syytä rajoittaa omiin koneisiin sillä toisen tekoset noudattavat aina hieman erilaista logiikkaa ja kun erilaista tulee liikaa niin jossain vaiheessa skriptiajuri sortuu kokonaan. Toisen koneesta haetaan vain yksi skripti tai kansio kerrallaan.
- vastaukset skriptiajurin kysymyksiin talletetaan myös ja halutessaane saa esiin.
- jos haluat aloittaa uuden ilmentymän skriptiajurista selataksesi toisella ohjeita ja samalla kun ensimmäisellä teet uutta skriptiä niin avaa ensimmäisen skriptiajurin ilmentymä normaalisti. Valitse sitten uusi työtila Dashboardin työtilan-vaihtimella ja paina uuden työtilan skriptiajuri-kuvaketta (jos painat Dashboard:n skriptiajurin kuvaketta palaataan ensin alkuperäiseen työtilaan).
- skriptintekijän täytyy etsiä toiminta-ideoita netistä, kirjoista tai ... mutta omasta päästä ei pidä noutaa mitään, silla parhaat skriptit tuppaavat olemaan perusteiltaan niin omituisia että omassa päässä semmoisia ideoita ei ole. Tämä johtaa siihen, että kaikki ovat yhtähyviä skriptintekijöitä, eroa on vain siinä kuka viitsii yrittää. Toisaalta sekin on totta että oikean ohjelmointitavan omaksuminen kestää vuosia jona aikana täytyy jaksaa uskoa että BASH kykenee mihin hyvänsä.  
- siis jos alkuperäinen idea ei ole hyvä niin skriptistä ei voi tulla hyvää vaikka sitä parantelisi kuinkapaljon tahansa. Ja alkuja on miljoonia ja oikea niistä melkein varmasti sellainen jota et itse valitsisi. 
- skriptinteko tuskin sujuu hyvin mikäli ohjelmoi muillakin kielillä ja toisaalta jos teet skriptejä et voi muihin kieliin koskeakaan.
- usein ideat kumpuavat tietämättömyydestä - kun ei tiedä kuinka asioiden kuvitellaan olevan niin tulee kokeiltua aivan uutta.
- yksikään skripti ei kestä ajan rappeuttavaa vaikutusta vaan sitä on ajoittain päivitettävä. Joskus päivitystä ei voi suorittaa pitkiin aikoihin ja kun sitten pitkän ajan kuluttua alkaa skriptiä päivittämään niin korjaus-yritykset aiheuttavat usein melkoista vahinkoa koska skriptien tarkoitusta ja käyttöä ei enää tarkoin muista. Tämänvuoksi täytyy ylläpitää täydellistä versiohistoriaa jolloin siihen vanhaan paluu on helppo - ja sitten uusi yritys.
- skriptejä ei kannata yrittää nopeuttaa vaan tehdä uudestaan alusta asti täysin eritavalla, sillä käytännössä on mahdotonta että yhtäkään skriptiä olisi kasattu parhaalla mahdollisella tavalla vaan varmasti joku muu on maailmalla tehnyt sen paremmin. Ja joku paremmin kuin hän. Ja joku .... Tämänvuoksi ajettaessa skripti skriptiajurilla ajon lopussa esitetään Linuxin oman time-käskyn tulokset; varsinkin suhteen UserTime/SystemTime ollessa suuri skripti kannattaa kirjoittaa uudestaan.   
- jollakin tavalla toimivan skriptin tekeminen on helppoa, mutta skriptin tekeminen nopeaksi ja virheettömäksi on pelkkää tuskaa kunnes saa käyttöönsä kunnollisen kehitysympäristön. Skriptiajuri on kunnollinen kehitysympäristö. 
- kun skriptin nimessä rivin pituus ei riitä niin nimi täytyy voida dokumentoida, elikä kertoa monisanaisesti mikä skritin tarkoitus on. Dokumenttien pituutta ei saa rajoittaa.
- BASH:ista on lukemattomia vanhentuneita ja hieman virheellisiä ohjeita. Lisäksi hyvätkin ohjeet ovat yleensä niin epäselviä ja laajoja että niistä saa selvän vasta kun ongelma on jo ratkennut.   
- BASH-skriptit eivät käytä kirjastoa. Kuitenkin skriptien pahimmat virheet ja hidasteet tehdään samankaltaisissa asioissa ja kirjastoa käyttäen skriptit syntyisivät virheettömämpinä ja skriptien tekeminen nopeutuisi oleellisesti. BASH osaa kyllä käyttää kirjastoa jos itse teet kirjaston, mutta BASH:ia on alettu rappeuttaa tässä kirjasto-asiassa; skriptaus on turvallisuusriski kuulemma - ennenkaikkea se on riski isojen poikien raha-kukkarolle.
- toisaalta BASH:illa on erinomainen kirjasto - kaikki Linuxin ohjelmat: grep, awk, sed, tr ... , niitä on tuhansia eikä tarvitse tehdä mitään jotta ne saisi käyttöönsä. Ne on kuitenkin kaikki tehty jo kauan sitten eivätkä ne ota muuttuneita vaatimuksia kunnolla huomioon. Eikä uusia enää kyetä tekemään. 
 - jos mennään toiseen kansioon, tehdään sierllä jotakin ja palataan sdiihen kansioon josta lähdettiin niin valittuna täytyy olla sama kuin mikä oli valittuna kun mentiin sinne toiseen kansioon.

 

 
