Mine sisusse
Otsi siit
  • Rohkem valikuid...
Otsi tulemusi mis sisaldab...
Otsi tulemusi...

[startup] MMO Markets (BETA: http://www.mmomarkets.com)

Milline kujundus on parim?  

12 liiget on hääletanud


Soovitatud postitused

Tere,

 

olen algatamas uut veebiprojekti, mille taolist olen juba ammu tahtnud teha, aga erinevatel põhjustel pole saanud tehtud. Üheks põhjuseks oli see, et ma ei oskanud programmeerida ja palju raha ka pole, et programmeerijatele maksta. Lisaks meeldib mulle asju ise teha.

 

Programmeerimist olen omal käel õppinud nüüdseks üle poole aasta ( erinevad keeled.. PHP, JS, JAVA ), disainist jagan ka natukene (HTML, CSS, PS).

 

See tähendab seda, et algkapitali pole palju vaja, kuna ma saan enamus asju ise tehtud v.a näiteks logo, mille kavatsen lasta mõnel freelanceril teha. See on tänapäeval suhteliselt odav.

 

Esialgse prototüübi teen valmis tõenäoliselt üksi.

 

Kuna peale idee mul midagi eriti veel pole, siis ma ärimudeli detailidesse ei lasku, aga ütlen nii palju, et see on seotud mängudega.

 

Natuke äriblogidest

See teema/blogi on ühtlasi ka test Vahvli juhtkonnasisestest diskussioonidest välja kasvanud ideele: Äriblogid. Äriblogide idee on ideaalis kasulik kõigile osalejatele: ühelt poolt saavad mingi projektiga alustajad / tegelejad oma ideedele pidevat tagasisidet, saavad julgustust asja mitte katki jätta, leiavad omale ehk mõned mõttekaaslased. Teisest küljest saavad blogide lugejad näha projekti arengut (meelelahutuslik faktor) ja võib-olla mõni lugeja saab inspiratsiooni, et ise mõni projekt käima lükata (inspireeriv faktor). Ning loodetavasti suudame tekitada uusi ja huvitavaid teemasid ning arutelusid, mis on foorumi arengu jaoks elutähtis.

 

Kui ilmneb, et inimestel on selle alafoorumi temaatika vastu huvi, siis plaanime luua Vahvlisse eraldi Startup sektsiooni, kuhu koondame erinevat startup-indusega seotud informatsiooni ja arutelusid ning ehk on meil võimalik tekitada midagi startup inkubaatori sarnast.

Minu enda projekti juurde tagasi

Hetkel on minu jaoks kõige tähtsam projekti tehniline külg ehk veebiäpp. See tähendab, et tuleb saada valmis töötav prototüüp.

Praegusel ajal ma mõtlen ja planeerin, kuidas seda veel täpselt teha, aga osad asjad on juba kindlad:

 

- Front-end tuleb põhiliselt AngularJS.

- Disaini vundamendiks saab Twitter Bootstrap, täpsemalt mõni admin template Wrapbootstrap.com-ist. (maksab umbes 20-30 USD).

- Back-end tuleb kas NodeJS või PHP. Pole veel otsustanud.

- Logo ostan freelance tööna sisse (50-200 USD). Kui mõni lugejatest on andekas logo disainer, siis saatke mulle PM-i näited oma töödest ja võib-olla tellin logo teilt.

 

Ma olen WrapBootstrapist valinud välja templated, mis mulle kõige rohkem meeldivad, aga ma tahan, et te aitaksite mul otsustada.

 

Milline kujundus on parim? (vastata saab üleval küsitluses)


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
SUPERVIP
Lugesin küll kaks korda su teksti läbi, kuid ei saanud aru, millega su projekt tegelema hakkaks? :D

 

Loed ikka silmadega?

 

Kuna peale idee mul midagi eriti veel pole, siis ma ärimudeli detailidesse ei lasku, aga ütlen nii palju, et see on seotud mängudega.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

Jah, ma lihtsalt ei näe mõtet ärilisest osast hetkel rääkida, mis ei tähenda muidugi, et ma pole teinud turuanalüüsi ja põhjalikult asja läbi mõelnud. See on kõik juba tehtud. Praeguses faasis on aga kõige tähtsam saada valmis esimene prototüüp.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

  • Ostsin ära ja kohendasin Light Blue template (nr. 7) oma projekti jaoks. Lisaks on veel vaja üleliigset Javascripti välja korjata ja CSS-i ka kõvasti kohendada - ta pole hetkel väga responsive (näeb osadel resolutsioonidel kole välja).
    .
  • Tekitasin siis kaks esimest visandit esilehest:
     
    1) Esileht sisse logituna - http://vahvel.net/mmomarkets/beta/index-logged.html
     
    2) Esileht esmasele külastajale / sisselogimata kasutajale - http://vahvel.net/mmomarkets/beta/index-newcustomer.html (video asemel peaks olema lehte tutvustav video, mida mul veel pole :) )

 

Ajakulu: ~2 päeva

 

Järgmine samm: Front-end JS alustamine,AngularJS lisamine, üleliigse JS-i eemaldamine

 

Kommentaarid/tagasiside alati oodatud.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
SUPERVIP

Väga vinge asi sul käsil. On endalgi mõttesse tulnud taoline asi püsti panna. Arvan, et sina saad sellega ka hakkama.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas
Väga vinge asi sul käsil. On endalgi mõttesse tulnud taoline asi püsti panna. Arvan, et sina saad sellega ka hakkama.

 

Tänud. Ehk peaksid ka midagi "taolist" proovima siiski. :D

 

Tänane sissekanne siis:

  • Täna tegelesin enamasti lihtsalt lugemisega best-practices teemal - kuidas viisakat koodi kirjutada, kuidas äppi struktueerida jne. Lugesin vast kokku 2-3h. Aga natukene sain ka reaalselt tehtud siiski.
    .
  • Lisasin lehele AngularJS-i, koristasin ära enamus algset JS-i ja muud pahna, mida sellistesse valmis-templatedesse topitakse.
    .
  • Otsustasin hakata kuskilt otsast funktsionaalsuse ehitamisega pihta ja otsustasin seda teha tavakasutaja loogiliste sammude järgi. See tähendab, et alustasin pihta esilehelt, kuhu iga uus kasutaja satub ja esimene asi, mida ta teha tahab (peale lehega tutvumist) on registreerumine.
     
    Tulemust saab näha, klikkides paremal üleval "Login" või "Signup" ja peale seda klikkides kuhugi mujale.
    LINK: http://vahvel.net/mmomarkets/beta/index-newcustomer.html
     
    Selle effekti (mujale klikkides läheb kinni) saavutamiseks kasutasin "offclick" direktiivi, mille leidsin siit: http://ngmodules.org/modules/angular-off-click
    .
  • Õppisin ka ühe uue Javascripti triki selgeks. See on lihtsamate IF-ELSE loogikate kirjutamiseks. Kui keegi viitsib mu app.js koodi vaadata, siis seal on selline funktsioon:
     
        
    $scope.toggle = function(tab) { 
       $scope.headerData.activeTab = $scope.headerData.activeTab === tab ? null : tab;    
    };


     
    Aga kui ma seda trikki ei oleks selgeks õppinud näeks see funktsioon välja selline:
     

        
    $scope.toggle = function(tab) { 
    
       if ( $scope.headerData.activeTab === tab ) {   
           $scope.headerData.activeTab = null;
       } else if ( $scope.headerData.activeTab != tab ) {   
           $scope.headerData.activeTab = tab; 
       } 
    
    };
    


     
    ... ja see funktsioon läheb käima ng-click abil:
     

     Sign Up
    


  • Järgmine samm: registreerimise tööle panemine
    .

Nagu ikka, kommentaarid ja tagasiside on oodatud.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

  • Lootsin tänasega regamist tööle saada, aga kahjuks nii palju ei jõudnud. Siiski sain tehtud registreerimisvormi valideerimise (kontrollib e-maili formaati, kontrollib kas paroolid ühtivad) ja sain setupitud äppi Digitaloceanisse, Linuxi peale.
     
    Vaadata saab siit: http://178.62.206.238/
  • Registreerimise vormi valideerimine on nüüd toimiv, järgmiseks on vaja saata front-endist back-endi HTTP request kasutaja e-maili ja parooliga. Esiteks tuleb kontrollida kas sellist e-maili juba andmebaasis pole, teiseks tuleb siis see kasutaja andmebaasi lisada ja kolmandaks tuleb saata tagasi front-endi vastus, et kas kasutaja regamine oli edukas või mitte.
  • Selliste toimingute jaoks on vaja luua back-end API, mida ma täna üritasin ka teha, aga ei suutnud PHP-s Angularist saadetud HTTP requesti lugeda.
  • Järgmine samm: ​toimiv API, toimiv registreerimine


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Külaline misterx

See ?: asi on üsna levinud ka teistes keeltes.

// IMO veits keeruline lugeda
$scope.headerData.activeTab = $scope.headerData.activeTab === tab ? null : tab;   

// paneks kas sulud ümber, näeb üsna ilus välja
$scope.headerData.activeTab = ($scope.headerData.activeTab === tab ? null : tab);

// või kasutaks tavalist if/else lauset, else if küll mitte mingit moodi vajalik ei ole
if($scope.headerData.activeTab === tab) {
   $scope.headerData.activeTab = null;
} else {
   $scope.headerData.activeTab = tab;
}

//või teeks ühe funktsiooni juurde, IMO kõige parem variant
getNewTab = function(curTab, toggledTab) {
   if(curTab === toggledTab)
       return null;
   return toggledTab;
}
$scope.toggle = function(tab) { 
   $scope.headerData.activeTab = getNewTab($scope.headerData.activeTab, tab);
}

Kui ma ei eksi, siis Angularile meeldivad REST teenused, mille päringu sisu saab PHP-s lugeda nii:

$data = json_decode(file_get_content("php://input"));
?>

Muudetud liikme misterx'i poolt

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas
See ?: asi on üsna levinud ka teistes keeltes.

// IMO veits keeruline lugeda
$scope.headerData.activeTab = $scope.headerData.activeTab === tab ? null : tab;   

// paneks kas sulud ümber, näeb üsna ilus välja
$scope.headerData.activeTab = ($scope.headerData.activeTab === tab ? null : tab);

// või kasutaks tavalist if/else lauset, else if küll mitte mingit moodi vajalik ei ole
if($scope.headerData.activeTab === tab) {
   $scope.headerData.activeTab = null;
} else {
   $scope.headerData.activeTab = tab;
}

//või teeks ühe funktsiooni juurde, IMO kõige parem variant
getNewTab = function(curTab, toggledTab) {
   if(curTab === toggledTab)
       return null;
   return toggledTab;
}
$scope.toggle = function(tab) { 
   $scope.headerData.activeTab = getNewTab($scope.headerData.activeTab, tab);
}

Kui ma ei eksi, siis Angularile meeldivad REST teenused, mille päringu sisu saab PHP-s lugeda nii:

$data = json_decode(file_get_content("php://input"));
?>

 

   $scope.signup = function(newUser) {
       console.log(newUser);  -----> UNDEFINED
       HTTPservice.signup(newUser).then(function(data) {
           console.log(data);
       });
   };

 

HTTP requesti osas sul õigus jah, ma jätsin angulari ühe lolli vea sisse... tänu millele jsoni decodimiseni ei jõudnudki täna.

 

Aga see shorthand polnudki mõeldud loetavuse eesmärgil, pigem ma olen näinud suht paljudes kohtades seda süntaksit ja pole kunagi viitsinud süveneda selle tähendusse. Kuna ma tean, et seda funktsiooni kuskil rohkem vaja ei lähe, siis pigem kasutaks kolmandat varianti (lühem/lihtsam). Neljas variant eeldab vast, et seda funktsiooni läheb kuskil veel tarvis.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Külaline misterx

Tihti on nö. abifunktsioonid kasulikud ka siis, kui neid kutsutakse välja vaid ühes kohas, juba selle pärast, et järgmine dev ka aru saaks, mida miski asi teeb. Selle undefined errori saad korda, kui ng-submit kutsub välja signup(newUser), mitte signup().

Jaga seda postitust


Postituse link
Share on other sites
SUPERVIP

  • Lootsin tänasega regamist tööle saada, aga kahjuks nii palju ei jõudnud. Siiski sain tehtud registreerimisvormi valideerimise (kontrollib e-maili formaati, kontrollib kas paroolid ühtivad) ja sain setupitud äppi Digitaloceanisse, Linuxi peale.

 

Registreerimisvormis saab sisestada sellist "emaili": a@a

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas
Registreerimisvormis saab sisestada sellist "emaili": a@a

 

Huvitav tähelepanek.

Angulari native e-maili validaator teeb seda jah -> https://github.com/angular/angular.js/issues/6279

 

Ma proovin direktiivi kirjutada, mis sellise formaadi peale errori viskab. Peaks suht kiire ots olema.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Külaline misterx

E-posti aadressi valideerimisega vaeva näha on ausalt öeldes suht mõttetu. Sisuliselt ei ole vahet, kas sisestatakse e-posti aadress, mis ei ole kasutuses või mingi suvaline tähejada, meili ei saa kumbki kätte. Praegune kontroll on piisavalt hea, nii kui nii tuleb selleks, et teada saada, kas see e-posti aadress kuulub samale inimesele, kes endale sellega konto lõi, saata üks meil.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas
E-posti aadressi valideerimisega vaeva näha on ausalt öeldes suht mõttetu. Sisuliselt ei ole vahet, kas sisestatakse e-posti aadress, mis ei ole kasutuses või mingi suvaline tähejada, meili ei saa kumbki kätte. Praegune kontroll on piisavalt hea, nii kui nii tuleb selleks, et teada saada, kas see e-posti aadress kuulub samale inimesele, kes endale sellega konto lõi, saata üks meil.

 

Praktilises mõttes on sul õigus, aga ma tahan lihtsalt proovida.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

Eraldi direktiivi polnud vaja selle jaoks, vaid lihtsalt ng-pattern õige regexiga.

 

 

2-10 tähemärki peale punkti, kuna uuemad top-level domeenid on päris pikad .gallery jms


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

Täna mässasin PHP-ga, et mingi algeline API kokku ajada. Midagi ilusat ja toimivat hetkel eriti kahjuks näidata pole.

 

Homme teen Githubi repo ka, et asjatundjatel oleks lihtsam projekti arengut jälgida ja liigun jätkuvalt edasi eesmärgiga saada valmis registreerimine. :D


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

Viimased 2 päeva olen tegelenud sellega, et saaks registreerimise tööle. Selle jaoks olen loonud algelise API ja back-endi.

 

Nüüd registreerimine toimib, aktiveerimiskiri tuleb peale vormi kasutamist, seal olevale lingile klikkides saab konto aktiveeritud. AGA hetkel lähevad aktiveerimiskirjad spämmboxi.

 

Kellel veidi aega on , võib regamist proovida ja anda tagasisidet, et mis tunne jäi . :D

 

Logimine töötab backendis juba ka, aga pole jõudnud veel front-endi teha.

 

Järgmine samm/sammud:

1) logimine front-endis, sessioonid, auth

2) brute-force rünnaku takistamine back-endis

 

Viimane versioon on alati üleval aadressil: http://mmomarkets.com


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
SUPERVIP

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

Olen viimased 3 päeva tegelenud ka muude asjadega, aga jõudnud nii mõndagi MMO Marketsil valmis:

- Toimiv logimine/väljalogimine/regamine, tokenite baasil autentimine, algeline brute-force kaitse. Hetkel kehtivad tokenid 24h. Mõned bugid küll on, aga hetkel ei peagi iga detail olema ideaalne. Paroolide hashimiseks kasutan SHA512 (parool+unikaalne salt).

- Organiseerinud nii front-end kui back-end failid ja kaustad loetavamasse vormi.

 

Beta-versioon alati kättesaadav: www.mmomarkets.com

 

Järgmised sammud:

- Forgot password? töölepanek

- Algeline kasutaja kontrollpaneel - kasutajanime seadmine, parooli muutmine


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

Nädalake möödas, olen asjaga suht iga päev tegelenud. Vahel rohkem, vahel vähem.

 

Lisandunud asjad:

- Parooli taastamine

- Kasutajanime seadmine ("My account" all, ainult logitud kasutajad näevad seda sektsiooni)

- Parooli muutmine ("My account" all, ainult logitud kasutajad näevad seda sektsiooni)

- "Market" sektsiooni algeline front-end aadressil: http://www.mmomarkets.com/market (nähtav ka külalistele)

 

Järgmised sammud:

- NodeJS ja Socket.IO setup, Socket.IO eesmärgiks siis reaalaaja funktsionaalsuse lisamine nt. teavituste, privaatsõnumite, uute pakkumiste jne jaoks.

- Esimene Socket.IO-l põhinev funktsioon saab olema uue pakkumise lisamine:

--- Kasutaja lisab uue pakkumise -> Pakkumine kontrollitakse & sisestatakse andmebaasi -> Socket.IO teade läheb laiali kõigile, kellel leht lahti on ja pakkumine lisandub reaalaajas

 

Olen ka esitanud logo tellimuse foorumikasutajale Sunday, kes on väga andekas graafiline disainer. Loodetavasti saan varsti näidata tema tehtud MMO Markets logo sketse.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites
Author of the topic Postitas

http://www.mmomarkets.com/market

 

Olen siis valmis saanud:

- Algelise pakkumiste lisamise (ainult regatud kasutajad saavad seda teha), mis reaalajas kajastub.

- Pakkumiste filtreerimise mängu, toote, koguse põhjal.

 

Tehnilise poole pealt nii palju:

- Kõik tegevused ja sündmused, mis peavad reaalajas kajastuma front-endis ei lähe otse API-sse, vaid Socket.io-sse, mis Nodejs peal jookseb. Node app siis suhtleb API-ga ja saadab vastused tagasi front-endi.

- Ülejäänud tegevused, mis ei pea olema reaalaajas käivad otse Angular->PHP backend

 

Edasi tuleb:

- Oma pakkumiste haldamine kasutaja kontrollpaneelis (peitmine, muutmine, kustutamine)

- Algeline rahakott (konto jääk)

- Algeline toimiv ostu-müügi protsess, algusest lõpuni

 

Ma nüüd kasutan tihti sõna "algeline", sest viimasel ajal on leht kuidagi aeglaselt arenenud, kuigi ma pidevalt asjaga tegelen. Põhiaja röövivad erinevad pisidetailid, mis suures plaanis polegi väga tähtsad. Põhieesmärk on siiski algne prototüüp võimalikult kiiresti tööle saada ja seetõttu nüüd ma üritan igas lehe osas luua minimaalse vajaliku funktsionaalsuse ning jälgida, et hiljem oleks võimalikult lihtne funktsionaalsust hakata järk-järgult juurde lisama.


Поработай головой, чтобы купить свои мечты.

Jaga seda postitust


Postituse link
Share on other sites

Kommentaari lisamiseks loo konto või logi sisse

Kommenteerimiseks peate olema liige

Loo konto

Liituge meie kommuuni uue kontoga. See on lihtne!

Loo uus konto

Logi sisse

On juba konto? Logi sisse siit.

Logi sisse nüüd

×
×
  • Loo uus...

Oluline informatsioon

Selle veebisaidi paremaks muutmiseks oleme teie seadmesse paigutanud küpsised . Võite kohandada oma küpsiste seadeid , vastasel juhul eeldame, et te olete küpsiste kasutamisega nõus kui jätkate veebisaidil sirvimist.. Palun lugege läbi Kasutustingimused ja Privaatsuspoliitika.