Linux за българи: Форуми

Програмиране => Общ форум => Темата е започната от: 4096bits в Aug 25, 2016, 00:27



Титла: Малко насочване моля!
Публикувано от: 4096bits в Aug 25, 2016, 00:27
Мисля от известно време да напиша едно програмче. Хрумна ми, като видях как една моя бивша колежка се рови по тефтери, бележчици, телефона си, лаптопа, два дена, докато намери телефона на един нейн клиент. Отдавна е там и да кажа, че е разхвърляна, не е. Та ми хрумна да ѝ спретна нещо малко, дето да може да ѝ служи да си води нещата. Клиентите, договори към тях, срещи кога е провеждала, бележки към всичко, може би и календар. Ще ми е добро упражнение. Та въпроса ми е, какво да използвам за база данни? Не искам да се инсталира никакъв сървър, та евентуално нещо от рода на SQLite. От няколко месеца разбрах още, че имало на този свят нещо, дето се наричало NOSQL, обаче и там сървъри. Mongo, Couch и разни такива. Трябва и да може да се криптира базата, та да няма достъп от други хора.


Титла: Re: Малко насочване моля!
Публикувано от: jet в Aug 25, 2016, 02:14
То хубаво програмче, ама после ще се почне: как да го стигам отвсякъде и да нямам хиляда копия, ама да може и от таблета, и от телефона, и на лаптопа, и на жената... и т.н. Аз отдавна съм разбрал, че нещо за да върши свясно работа трябва да е през уеб. Иначе ще се чудиш как да синкваш данните, проблеми с версиите и многоплатформеност разни магии (кръпки) от рода на DropBox.
Инсталирай си едно уики и си готов. Ако искаш по-напудрено и юзерфрендли - някоя CRM.
Иначе за кодене - най-лесно е SQLite с подходящ connector/driver питаш базата все едно е SQL сървър, но реално е прост ASCII файл. Зависи от езика който ползваш и имплементацията.


Титла: Re: Малко насочване моля!
Публикувано от: go_fire в Aug 25, 2016, 10:17
Общо казано Джет ти го е написал. За нещото е мислено, мислено, мислено и измислено. Остава само да се приложи. Затова аз казвам — захарният наследник SuiteCRM. Така няма и да ти се налага и ти да го развиваш.

Относно СУБД това NoSQL е доста стара тенденция вече, догодина ще станат 10 год. Както всичко ново е сбъркано. Реално това не е NoSQL. Истински NoSQL е нещо от рода на Мемкеш, която е виртуална, файлова система. С NoSQL искат да кажат, че няма връзки в информацията¹, но езика, който се ползва е подобен на SQL. Извода е, че цялото нещо е една голяма глупост.

Защо съществува? Ами поради две причини.

Първата е, че езиците за програмиране масово станаха ООП. В тях SQL със своите структурирани данни не се вмества, защото те искат обекти. Някой неща е детска игра, но за други голяма трудност да се обърнат в обекти. Измислени са какви ли не мастодонти да вършат тази работа и всички те се справят от зле до отвратително. Най-известният им представител за п4п е Доктрина.

Другата е, че отдавна вече живеем в 1984-та. Събират се огромни обеми от данни, в които трябва да се търси бързо. Релационните бази не се справят с нито едно от двете. Когато са правени, са правени с идеята за огромни данни, но преди 30-40 години изобщо не са си представяли, какво ние днес ще си представяме като „много данни“.


-----
¹/ По-позната като релация. С болка на сърцето споделям, че все още няма читав български превод.


Титла: Re: Малко насочване моля!
Публикувано от: 4096bits в Aug 25, 2016, 11:34
Ама аз не ви питах за това, дали някой или пък аз, ще иска още нещо отгоре като функционалност и да трябва да се преправя. Не мисля и да го правя това. Ще бъде стрейталуей инструмент и толкова.
Питах за това, коя BD да ползвам. Искам да може да се криптира или да може да и се сложи парола за да се достъпи и да не ѝ трябва сървър.


Зная, че NOSQL е стара концепция, зная и какво представляват различните вариации. Но с оглед на това, че идеята е да се ползва само от един човек, не е нужно  да е нещо супер продуктивно, разширяемо и прочее. Просто да държи инфо за няколко стотин клиента и това е. Та, понеже не зная друго безсървърно нещо освен SQLite, питам за варианти.


Титла: Re: Малко насочване моля!
Публикувано от: go_fire в Aug 25, 2016, 11:44
Ами SQLite поддържа потребители. Като премия към това, го има на всеки умнофон на планетата.

Но да си знаеш и да не се самозаблуждава, че последваща разработка и поддръжка няма да ти се наложат. Единственият вариант да ги няма, е нещото да не се използва. Използва ли се, ще се наложи обезателно.

Успех!

п.п. Ако кода ти не е свръхсекретен, може на някакви етапи да споделяш части от него да ги обсъждаме.

п.п.п. Когато аз направих подобно нещо, то беше без никакви бази и си беше обикновен текст. Сега ясно ни е на всички, че поради несъвършенства в технологиите да работиш с чист текст не е най-доброто на света. От друга страна чудничко може да се комбинира с някакви алгоритми за криптиране или директно с готови решения като VeraCrypt.


Титла: Re: Малко насочване моля!
Публикувано от: 4096bits в Aug 25, 2016, 14:12
То не пречи самите данни да са криптирани, преди да се напъхат по местата им. Но чак пък толкова. Значи SQLite?


Титла: Re: Малко насочване моля!
Публикувано от: jet в Aug 25, 2016, 15:33
Накрая ще направиш каквото правят всички лели - Екселска табличка, а по отворените батки Аксес формичка (грозни решения като при програмчето).


Титла: Re: Малко насочване моля!
Публикувано от: Naka в Aug 25, 2016, 15:38
То отстрани изглежда уж просто......ама много скоро нещата ще добият голяма сложност.

Например ако имаш повече от >2 таблици скоро данните че станат релационни - ще ти трябва да мислиш за неща дето им викат транзакции или най малкото да правиш заключвания на таблиците - иначе данните могът да се преплетът.

Ами като имаш бележки, телфони - ще ти се наложи да правиш търсачка :'(....
ако е веб приложение, да управляваш урл променливите www.example.com/?var1=xxxx&var2=yyyy&var3=zzzz ... си е доволно сложно.... и там се почват едни ако някой е въвел кавички....махане слагане, ескейпване ... sql инжекции >:(
ако има и кирилица - а то ще има и url кодиране и декодиране на url параметрите....

Едно уж просто нещо повлича сума ти сложнотии :'(
Със сигурност няма да е просто.


Титла: Re: Малко насочване моля!
Публикувано от: 4096bits в Aug 25, 2016, 16:08
Търсачка ще има със сигурност. То иначе се обезсмисля цялата работа.


Титла: Re: Малко насочване моля!
Публикувано от: spec1a в Aug 25, 2016, 16:39
   По отношение на криптирането: можеш да си направиш криптиран дял:
с cryptsetup ,не е голям въртел, в дяла вече ще е базата данни:
mysql или postgresql, или каквото най ти харесва.


Титла: Re: Малко насочване моля!
Публикувано от: 4096bits в Aug 25, 2016, 16:53
Аз няма да го ползвам това. Та дяла няма как да е криптиран. Добре, ще разуча, как става точно това на SQLite и почвам. Или криптирана или парола.


Титла: Re: Малко насочване моля!
Публикувано от: ddantgwyn в Aug 25, 2016, 18:40
¹/ По-позната като релация. С болка на сърцето споделям, че все още няма читав български превод.
Отношение, ДжоДжо, отношение.

А ако ти се струва много късо, добави и едно взаимо- отпред ::)


Титла: Re: Малко насочване моля!
Публикувано от: chen_dzen в Aug 25, 2016, 22:57
Мисля ,че говориш за нещо подобно на EVERNOTE ($2)


Титла: Re: Малко насочване моля!
Публикувано от: 4096bits в Aug 25, 2016, 23:38
Добре, благодаря. Изглежда ще е SQLite. Някой спомена, че даже си го има на всички мобилни платформи. И без това се чудех и какво GUI да бъде, та май ще е Kivy.


Титла: Re: Малко насочване моля!
Публикувано от: Златин Георгиев в Sep 05, 2016, 12:07
Може би искаш да направиш подобно на http://diary.zzz.bg/ приложение.
То представлява дневник за йерархично групиране на информацията и е с отворен код.
Позволява ограничаване на достъпа с потребител и парола до различни дневници.
Разработено е чрез NoSQL базата ZZZ Base поддържана от ZZZ Server http://demo.zzz.bg , който е безплатен за некомерсиални приложения. Подробна документация за работа със ZZZ Base и ZZZ Server има на http://demo.zzz.bg/doc


Титла: Re: Малко насочване моля!
Публикувано от: NorthBridge в Sep 05, 2016, 13:02
Мисля от известно време да напиша едно програмче. Хрумна ми, като видях как една моя бивша колежка се рови по тефтери, бележчици, телефона си, лаптопа, два дена, докато намери телефона на един нейн клиент. Отдавна е там и да кажа, че е разхвърляна, не е. Та ми хрумна да ѝ спретна нещо малко, дето да може да ѝ служи да си води нещата. Клиентите, договори към тях, срещи кога е провеждала, бележки към всичко, може би и календар. Ще ми е добро упражнение. Та въпроса ми е, какво да използвам за база данни? Не искам да се инсталира никакъв сървър, та евентуално нещо от рода на SQLite. От няколко месеца разбрах още, че имало на този свят нещо, дето се наричало NOSQL, обаче и там сървъри. Mongo, Couch и разни такива. Трябва и да може да се криптира базата, та да няма достъп от други хора.

Само да не се получи нещо подобно:

(https://imgs.xkcd.com/comics/standards.png)


Титла: Re: Малко насочване моля!
Публикувано от: laskov в Sep 05, 2016, 23:32
То май беше казано, ама ...
SQLite не поддържа мрежови връзки, т.е. данните не може да се споделят на няколко устройства.
Thunderbird е чудесен пощенски клиент с много добра адресна книга. Сравнително отскоро има и календар със срещи и задачи. Споделянето на календара работи добре. Споделяне на адресна книга не съм правил. Криптиране - също.