Vai Drupal vai "no nulles"...?

renathy Wed, 04/25/2012 - 20:24

Sveiki! Man ir zināmas iemaņas programmēšanā kā tādā (plašas zināšanas arī .NET un vispār PHP). Taču līdz šim visi projekti bijuši "no nulles" vai uzturēju YII vai CodeIgniter (kas arī ir faktiski no nulles, bet ar framework).
Tagad man vajadzīgs samērā vienkāršs interneta viekals ("vienkāršs" tādā ziņā, ka nevajaga nekāds pārgudrības, bet pamata lietas:
- lapā ir dažas sadaļas
- ir kategorijas (iespējams vairāku līmeņu, bet 2 vai 3 līmeņi)
- meklēšanas iespēja
- viena prece var būt vairākās kategorijās (vai varbūt precīzāk tāds kā tags, piemēram, zem kategorijas ATLAIDES atbilstoši atveras visas preces no citām kategorijām)
- iespēja pievienot video
- apmaksas sistēmas pievienošana
- reģistrācija lapā un attiecīgi pirkuma izdarīšana
- CMS (sadaļu tekstu rediģēšana, kategoriju nosaukumu maiņa, modificēšana, rēķinu apskate)
)
Tad nu man radies jautājums:
- kādi ir par/pret, lai šo taisīju ar Drupal
- kāds ir mācīšanās laiks Drupal + commerce
- kādas grūtības parasti rodas realizējot šādus risinājums
- kā ar dizaina pielāgošanu (cik sarežģīti)

Zinu, ka visu augstākminēto varu uztaisīt "no nulles", tāpēc nezinu, vai ir vērts mēģināt ar Drupal.

R.

Šeit tu sagaidīsi tikai viena veida atbildes ;) Protams!!!, ka tavām vajadzībām Drupal ir daudz piemērotāks nekā sākt no 'nulles'. Vienīgais, kas varbūt būtu jākodē klāt, ir apmaksas sistēmas pievienošana, ja tā ir kaut kāda īpaša. Diezgan daudz jau ir izdarīts arī priekš Latvijas populārākajām apmaksas sistēmām.
Tādā gadījumā man tālāk jautājums, kas man jādara? - uzinstalēšu drupal - pielikšu commerce Kā tālāk darboties? Cik daudz var iztikt ar admin tūli un kad jāsāk programmēt? Lasīju, ka Drupal ir liels learning curve... vai tiesa? R.
Ja es izvēlos Drupal + kkādu moduli interneta veikalam, kas man ir jālādē? Tikko sāku skatīties un atradu šo: - Commerce Kickstart Kas tas ir? Vai tas uzreiz apvieno Drupal + commerce? Kā ar latviešu valodu (kas jādara, ja es vēlos, lai viss būtu latviešu valodā)?
Welcome renathy to Drupal un drupal.lv! Jāsaka Tev atklāti, ka Drupal e-komercijas lietas Latvijā ir visai stīvas (vismaz komunikācijas un informācijas apmaiņas ziņā). Ar to negribu teikt, ka tas nav realizējams, jo ārpus LV ir pietiekoši daudz risinājumu un piemēru (pat mazliet neērti par LV un tas pat rada iekārienu/motivāciju kaut ko darīt lietas labā). Jāsaka, ka visi e-komercijas risinājumi ir ļoti atkarīgi no pamata uzstādījumiem, taču, mazliet personīgi, tracina frāze "vienkārši". Ja viss būtu vienkārši, tad nebūtu tādu jautājumu un nebūtu tādu speciālistu, kas to var izdarīt. :) Un ne tikai e-komercijas lietās. Uzreiz brīdinu par garu komentāru :))) Vērsim pie ragiem ... Jābrīdina, ka Drupal vienu lietu parasti var izpildīt N-variantos (izvēle Tava), kur jāizvērtē labākais vai atbilstošākais. Bez precīzas informācijas to nevar izdarīt. Tādēļ arī tas nav vienkārši. Taču mēģināšu dot virzienu, kurā tālāk vari "rakt". Jārēķinās ar atšķirībām gan risinājumos, gan moduļos, atkarībā no tā, ko izmanto pamatā - Drupal 6 (liels daudzums dažādu moduļu, bet nu, teikšu, vēl 2 gadi, un jāsāk domāt par D7), vai arī D7 (vēl nav tik daudz moduļu, bet tendences un nākotne ir perspektīva, iespējas arī). Sadaļas lapā N-tie varianti, bet Drupal pamatā ir CMS, tā kā ar to nebūtu jābūt problēmām. Content type, Taxonomy, Menu system - izvēlies, kas ir saprotamāk tev. Kategorijas Taxonomy, Custom izstādāti linkoti varianti ar Node reference, Ubercart/Commerce (mazliet atšķirīgas lietas) iestrādātie produktu grupešanas varianti. Ja būtu precīzāka info, varētu iepeistot saites. Search Vai nu Drupal radniecīgā meklēšanas sistēma (MySQL bāzēta, vai arī cita DB, ja to izvēlies), vai arī Scale-out/Deploy Apache Solr bāzēts meklēšanas dzinējs (man patīk pēdējais, bet tas vairs nav vienkārši). Video Nav zināms, vai video ir jābūt Drupal servētam, custom streaming risinājumam, vai to vienkārši jāieliek no youtube.com/vimeo.com/citi provaideri. Tur ir daudz risinājumu un arī daudz klupšanas akmeņu. Neaizmirsti par mobilajiem lietotājiem, kas nespēj izmantot flahs atskaņotājus!!! (tādu nu jau ir ļoti daudz, lai ar to nerēķinātos) Atkarībā no Drupal versijas, bet monstrīgs moduļu kopums ir saistīts ar Media moduli. Ir arī vienkāršāki risinājumi un parasti body filtri. Apmaksas sistēma Atkarībā no tā, kāda veida. Ir kaudze ar gataviem risinājumiem (PayPal, Google checkout, utt.), bet ja jāveido LV orientēts, tad ir nepieciešams API, dati, utt. Tas būs vis ticamāk Custom risinājums, jo gatavu moduļu nav. Vēl papildus LV risinājumi bieži prasa licenču izmaksas un programmatūras iegādi. Bet tas ir atkarīgs no maksājumu servisa provaidera. Reģistrācija lapā Ubercart to ļoti skaisti dara. Ja vēlies to pārrakstīt, tad tur ir tikai Custom risinājums, vai moduļu alterācija. Noteikti var izmantot arī darba procesu, ko pats Drupal piedāvā. Neaizmirsti par datu drošību un SSL redirektēšanu. Nezinu cik "sāpīgs" ir Tavs projekts. Moins! Atklāti sakot, neredzu kas tur vienkāršs, bet var būt esi spečuks šajā lietā. Tad cepuri nost, ja liekas, ka tas ir vienkārši. :) Par/Pret Drupal Kā jūties labāk. Ja vēlies izgudrot velosipēdu, daļu no būtiskām pamatlietām neiekļaut klientam gala darbā (klienta nezināšanas pēc), vai arī vēlies visas SEO lietas, XHTML tagu korektumu rakstīt no 0 - ja jūties tā labāk - risini no 0. Ja tomēr vērtē savu laiku, tad izmanto jau gatavus freimworkus - kurā nu jūties ērtāk vai arī Drupal (ja izkodīsi, noteikti būsi vinnētājs. Ja nē, tātad - nebūsi izkodis. Atrisinājumi šādās lietās ir dažādi). Atceries, ka klientam neinteresē, uz kā bāzes tu to taisi. Viņam vajag gala risinājumu, ar kuru noņemsies pēc tam pats!!! :) Drupal lerning curve Atkarībā no tavām zināšanām un apķērības. Bet pašlaik (pēc 5 gadiem darba ar Drupal) teikšu kā Ļeņins - Vienalga, vai gulēt ar sievu vai mīļāko, bet pats ātri uz bibliotēku un mācīties, mācīties, un vēlreiz mācīties! :) Visas tehnoloģijas attīstās, ieskaitot arī Drupal. Ar to jārēķinās. Drupal noteikti nebūs Online gatavi web risinājumi, kā to piedāvā Yahoo vai Google, kur web saskarnē samet lietas, un aizmirsti par visu pārējo. Ir jābūt pamatam, lai e-komerciju custom veidā izstrādātu vai nu no 0 vai arī ar Drupal. Pretējā gadījumā, ja šāda pamata nav, tad ir gatavie online risinājumi un punkts. Alternatīva - atrodam moduļus, kas būtu vis piemērotākie, neko nepārtaisam, pieliekam ādiņu un atkal punkts. Teikšu, ka Drupal kontekstā šīs lietas ir pamatīgi kostas, un daudzi LV uzņēmumi pat blakus nestāv tām vajadzībām un ierastajai praksei, kas jau ir iekļauta Drupal moduļos. Biežāk nākas pieredzēt funkcionalitātes samazināšanu, nekā pilnvērtīgi izmantot to, kas moduļos jau ir iekļauts. Protams, trūkst LV specifisku prasību - piemēram LV atbilstoša rēķina forma un multivalūtas. Bet nezinu nevienu OpenSource CMS/Commerce, kas to piedāvātu. Var būt esmu atpalicis. :) Grūtības e-komercijas risinājumos
  • Dizaina un funkcionalitātes saskaņošana,
  • Nepieciešamība pārveidot noteiktu gatavo moduļu workflow vai darbību
  • Nepieciešamība pieprogrammēt kaut ko, kas nav paredzēts modulī
  • Attēlu apstrādes un ērtas ievades jautājums
  • Preču vadības web interfeiss un tā saucamie Bulk data apstrādes risinājumi
  • Noliktavu atlikumu (ja tādi tiek uzturēti) menedžments
  • Sasaiste ar ārējo uzskaites/grāmatvedības/noliktavas vadības sistēmu
  • POS un kases aparātu integrēšana
Ko vēl lai tev nosauc, nezinot precīzus izejas datus? Dizaina pielāgošana Laikam nekļūdīšos, ja teikšu, ka dizaina pielāgošana būs vis vienkāršākais. Ja ir zināma funkcionalitāte, un ir panākts, ka nepieciešamie moduļi un vajadzības izpeld ārā adekvātā un korektā XHTML, tad tālāk jau paliek stils - CSS. Cik "dziļi" tu domāji dizainu? Rezumē - ja jūties labi ar 0 deklarāciju, un apņemies visu to, ko citi jau 100-ām reižu ir izdarījuši un pārbaudījuši atdarināt vēlreiz, tad labākais ir rakstīt no 0. Pretējā gadījumā (vai tas ir Drupal, vai kas cits) ir jārēķinās ar iedziļināšanos un lietu ņemšanu vērā. Nākamie iesūtījumi... ...kas man jādara?... Wrong question! Vai arī atbildi uz šo jautājumu vari saņemt ātri. Atver http://drupal.org, un tur viss ir rakstīts :) Google arī, protams, ir darugs. Un tas bez sarkasma. Gudrs nav tas, kurš visu zin (jo visu zināt nevar), bet tas, kurš māk atrast vajadzīgā brīdī, vajadzīgo informāciju. Ja vēlies palīdzību - izpildi mājas darbu! Jo plašāks un neskaidrāks jautājums, jo lielāka iespēja - vai nu neiegūt atbildi vispār, vai arī lasīt tik garus komentārus, kā rakstu es. :) Sāc ar praktisko. Uzliec Drupal, ja esi izvēlējies D7 un commerce, tad nākamais - lasi README.txt failus - katram (95%) modulim tas ir klāt ar visu nepieciešamo. Drupal moduļu instalācija bieži tev pateiks priekšā atkarīgos moduļus, un atkal - sākam lasīt. Kad nonāc strupceļā, tev ir konkrēta problēma. To arī uzraksti, un dabūsi komentāru par dažādiem risinājumiem vai ieteikumiem. Pretējā gadījumā - citi tavā vietā darbiņu nedarīs, jo, kā nojaut, tas nebūs viegli. Un cilvēki ir patērējuši daudz laika, lai to apgūtu un kļūtu par Drupal speciālistiem, ar ko sevi nodrošina ikdienā. Kad jāsāk programmēt? Drupal patiesībā ir ideāls tūlis Drupal izstrādātājiem un Drupal dizaineriem (nejaukt ar web grafiskiem dizaineriem), bet ne programmētājiem kā tādiem (kas protams noteikti nenāks par sliktu un tikai atvieglos sapratni). Respektīvi - kaudze ar risinājumiem ar labu, drošu un noteiktu modulāru funkcionalitāti, kur 95% gadījumu var iziet cauri ar esošiem moduļiem. Taču, ja šīs iespējas nerisina ieceres, tad ir jāsāk programmēt (ir, protams tādi, kas uzreiz sāk programmēt, jo tā viņi jūtas komfortablāk. Jautājums tikai - vai vajag). Atšķirībā no citiem CMS, Drupal ir pāri par 6k moduļu (ne visi, protams ir unikāli un labi), vet tie visi ir OpenSource. Nav slēpto izmaksu vai citu problēmu, ja vien nav saistība ar 3-pušu serivisiem. Māksla vai meistarība ir tos atrast, pielietot, nokonfigurēt un sajūtg kopā tā, kā vajadzīgs pēc plāna/dizaina. Ja tam nav laika - sākam programmēt, kur atkal palīdz Drupal.org ar dokumentāciju un API, kas un kā. Tas ir tas learning curve! Kickstart? Domāju, ka esi nokļuvis Drupal instalācijas profilā. Ir dažādi moduļi:
  • Vieni tādi, kurus uzliec, un nav jākonfigurē pilnīgi nekas - sāk strādāt pēc to iespējošanas.
  • Ir tādi, kur vajadzīga ir konfigurācija - parasti aprakstīta README.TXT.
  • Un ir, protams, tādi, kur nepieciešamas dažādas lietas arī tajā skaitā uz paša servera, lai to izpildītu.
Kickstart profili ir Drupal core + konkrētais modulis(-ļi) + vajadzīgās konfigurācijas, kuras instalējot tik pat vienkārši kā Drupal core, tu iegūsti uzreiz strādājošu risinājumu. Vai tas tev der vai nē - tas ir izpētes, izprašanas un vajadzību jautājums. Ja paņem Commerce kickstart - tur viss būs jau nokonfigurēts veidā, kādā šī profila izveidotājs piedāvā "izbaudīt" Commerce produktu. Es personīgi to neizmantoju, jo man patīk iespējot moduli pēc moduļa, saprast, kurā vietā parādās kāda konfigurācija un pašam veikt tādus labojumus/uzstādījumus, kādi ir nepieciešami projektā. Nevis sagāzt visu vienā čupā, un pēc tam tērēt laiku un salīdzināt, kas ir/nav saistībā ar konkrētiem moduļiem, un no kā tie ir atkarīgi. Man personīgi šķiet, ka otrs ir grūtāks variants, nekā sākt ar pirmo moduli un rēķināties ar tā pieprasītajām atkarībām (dependancies). Bet katram savs ceļš. Latviešu valoda Arī nebūs viegls jautājums. http://www.drupal.org/project/i18n. Taču rēķinies, ka ne visi moduļi ir i18n aware. Tātad, ne visi to ņem vērā, un te moduļi ir jāpiemeklē. Multivalodu lapas vienmēr ir radījušas problēmas, un arī ir dažādi risinājumi - sinhronas lapas, katrā valodā sava satura lapas, utt. Drupal visus šos risinājumus spēj "apēst". Galvenais saprast, kā ir vajadzīgs. CMS + commerce Šeit ir tā pozīcija, kur no Open source risinājumiem "Drupal shines". Ir jāizprot fakts, ka Drupal pamatā ir CMS, kas noteiktā laikā ir attīstījies un kļuvis jau par "web application framework", lai gan noteikti būs cilvēki, kas šo frāzi uztver savādāk. Viņiem daļēji būs taisnība, taču ar to gribu teikt, ka Drupal ir sava veida pilnvērtīgs pretendents uz "Web application framework" statusu. Commerce, Sociālās lietas, Aptaujas, vēl visādi loriņi, ir lietas, kas ir attīstījušās laika gaitā moduļu veidā. Līdz ar ko nevarētu Drupal uztvert kā e-Commerce risinājumu ar piedevām. Drīzāk otrādi - e-Commerce ir kā piedeva. Ir specifiski komercijas risinājumi (OpenCart, Magento Commerce, eCommerce), bet tur nav nekā no CMS. Izvēle par viena vai otra izmantošanu ir atkarīga atkal - no uzstādījumiem un vajadzībām. Es negribētu diskutēt par to, kas no šiem ir labāks vai sliktāks, jo katram ir sava pieeja. Zinu tikai, ka mani kolēģi šobrīd ir "krituši" uz OpenCart, bet paskatoties uz šī risinājuma prasībām un servera uzstādījumiem, mani tas padara ļoti bažīgu, jo tur ir tiešām viss uztaisīts skaisti, tikai aizmirstot par galvenām lietām - drošība, attīstība, modularitāte, utt. Bet atkal - jāatgriežas pie tēmas - kāds ir pamata uzstādījums. Drupal... Man patiesi ir prieks, ka pie savām zināšanām esi pieķēries Drupal. Es laikam nekļūdīšos, ja minēšu, ka Drupal ir diagnoze :) labā vārda nozīmē. Tiklīdz tu būsi "izkodis" to lietu, tu saprastīsi, ka citur nav jēgas līst iekšā, bet nekas nenāk bez maksas. Tavs jautājums par Learning curve ir tiešā saistībā ar to, cik apķērīgs būsi pats, ņemot vērā, ka tev ir zināšanas programmēšanā (PHP). Būtība ir izprast un rēķināties ar plusiem, ko piedāvā Drupal, pret nosacītiem mīnusiem - iemācīties to darīt pareizi un gūt no tā labumu ne tikai gala rezultātā, bet arī visās saistītajās lietās - uzturēšana, drošības jautājumi, attīstība, modularitāte, utt. Drupal, tā pat kā Sharepoint un citi risinājumi ir tendence, kuru viena vai otra lietotāju/izstrādātāju grupa uzskata par pamatotu bāzei, un attiecīgi sāk "urbt" tajā virzienā. Un diez vai kādu Sharepoint vai .NET izstrādātāju būs efektīvi pārliecināt par pretējo. Izvēle ir tavā ziņā - kur jūties labāk un savā vietā, tādu rīku arī izmantosi. Ceru, ka mazliet ieviesu skaidrību Tavā "vienkāršā e-komercijas risinājumā" vai vismaz informācijas ieguves virzienā. Aicinu būt konsturktīvam, uz uzdot pareizos jautājumus, jo tā ātrāk nonāksi pie secinājumiem/risinājumiem.
Jorpojām svārstos par Drupa vai nē, jo nobiedēja tas, ka Latvijā īpaši nav e-commerce lapas un par tām valodām... Problēma arī tajā, ka pasūtītājs negaidīs, kamēr "man pielieks kā darboties ar Drupal", tas arī biedē. Uzdot pareizos jautājumus nevar, kamēr nav skaidrības. Tad vēlreiz par komerciju un Drupal: - palikšu pie Drupal 7 - kādu moduli iesakat priekš komercijas nodrošināšanas?
Jānis, kā vienmēr izceļas :) 1) Ar valodām viss ir kārtībā 2) Latvijā ir pietiekami daudz e-commerce risinājumi, piemēram, www.vezur.lv, www.e-kiosks.lv, www.nautica.lv; un tad vēl kuponu pārdošanas vietne www.zizu.lv (vai tik tagad nereklamējas TV, tad jau apmeklētāju plūsma ir pietiekami liela); pats arī veidoju vienu kuponu vietni (tagad gan tā vairs nav aktīva) 3) Izmanto Ubercart, priekš tā ir vairāk gatavu moduļu un ir piemērotāks arī priekš LV
@rudins: Tikai atbildēju uz vienkāršiem jautājumiem :)) Paldies par saitēm. Nebiju pētījis, būs arhīvam.
Rudins: šitas vismaz iedrošina... Mēģināšu.
Valodas noteikti nav lielākā problēma. Komercija - Latvijā daudziem klientiem vajag "pa lēto", attiecīgi rēķinoties ar sekām. Tāpēc arī pašlaik nevaru minēt labus piemērus komercijai. Var būt kāds cits var papildināt šo. Pats jau arī atbildi uz savu jautājumu - ja nevar uzdot precīzākus jautājumus, tad nevar arī dot sakarīgu atbildi, jo risinājumi ir vairāki. Kamēr pats tos neiepazīsi, tikmēr neredzēsi atšķirību, un nevarēsi pieņemt lēmumu par vienu vai otru. Attiecībā uz to, vai pasūtītājs gaidīs, vai nē - tas nu ir tavās rokās. Par ieteikumiem:
Tāpēc jau prasu jums, kas ar to visu ir darbojušies... Es jau sāku petīt un tik daudz visa kā, ka nezinu no kā sākt un varu uzrauties uzreiz uz nepareizo.
Tad sāc ar Ubercart, un skaties tālāk- ko šis prasa. Būs vismaz pamats ar ko salīdzināt, ja tālāk ar to eksperimentēsi. Pats gan esmu tikai interesējies par Commerce risinājumiem, bet neesmu taisījis līdz galam. Noteikti padalīšos ar info, ja tāda būs vajadzīga.
Mani 2 santīmi: Piedodiet par šo komentāru, bet man tas ir jāpasaka: Taisīt "no nulles" ir kā art tīrumu ar kapli. Izmantot framework jau mazliet prātīgāk, bet tāpatās nākas taisīt jaunus velosipēdus. Protams, var rušināt savu mazo dārziņu ar kapli. Bet ja gribās strādāt profesionāli, tad vajag traktoru. Un te mēs nonākas pie "learning curve" jeb ieguldījumiem, kas nepieciešami, lai efektīvi "strādātu ar traktoru". No pieredzes saku, ka pirmo projektu vajag norakstīt uz mācīšanās rēķina, t.i. nevajag cerēt kaut ko no tā nopelnīt. Līdz ar to varbūt vajadzētu sākt ar kaut ko vienkāršāku. Varbūt tā nebūs patiesība tev, jo esi apķērīgs, un informācijas un apmācības materiālu pieejamība ir iespaidīga salīdzinot ar situāciju pirms dažiem gadiem. Kā praktisko padomu, iesaku noziedot dažas brīvdienas, uzstādīt sistēmu un uztaisīt prototipu šim projektam. Uzliec to pašu Commerce Kickstarter un iepazīsties ar viņu. Commerce džekiem ir lieliskas prezentācijas par Commerce lietošanas uzsākšanu. Pēc tam uzliec Drupal un pliku Commerce un mēģini salikt pa gabaliņiem kopā tādu pašu sistēmu kā Kickstarter, lai sapratu kā viņš strādā. Citi praktiskie padomi: - Drupal 7, nevis Drupal 6 - Commerce*, nevis Ubercart (uzskatu, ka C ir daudz mūsdienīgāks un jaudīgāks, bet atkal mazliet sarežģītāks par U) - Par LV maksājumu moduļiem prasi man vai Rudiņam (kods ir pieejams, mēs tikai priecāsimies, ja kāds palīdzēs to noslīpēt) - Lokalizāciju veic uz localize.drupal.org un lādē iekšā izmantojot Localization update moduli (tas gan notiek ar dažu dienu aizkavi, bet tādā veidā mēs viens otram palīdzam tulkot interfeisu) - Nāc uz Drupal entuziastu sanāksmēm, apmainīsimies ar pieredzi. Noziedo vēl vienu nedēļas nogali (maijā būs daudz brīvdienas) un noskaties prezentācijas par Site building, Commerce un Coding & Development: Denveras DrupalCon sesijas: http://denver2012.drupal.org/program/schedule Drupal Commerce: ecommerce any way you need it (video, Denver): http://bit.ly/GNc9xc * Iepriekš esmu taisījis Ubercart projektus uz D5 un D6. Lai arī esmu taisījis Drupal 7 projektus, ar Drupal Commerce vēl nē. Bet sen sekoju viņam līdzi un vistacamāk drīz taisīšu vienu D7+Commerce projektu.