Skip to main content

Posts

New Personal Website

Hello World, hello my blog again. I have good news, finally, I created my website , I do not know exactly what is the main goal for that and how it will be updated. Now I want to sync my current posts from the blogger platform and personal website, it can be easily done by using the `Blogger API` with some extra requirements which I want to have.   Especially,   - able to show/hide the post separately from blogger (1)   - use custom posts order (2)   - add some extra information besides tags (3)    For instance, technology stack, team size, etc. - add a possibility to use any 3rd party code highlighter instead of post-computed HTML from blogger (4) I think that the 4 the most required and nice feature - able to sync manually, or use cron for syncing with blogger (5)   There is some initial schema of my application   This is a pretty simple solution: two go services, one for fetching data, checking referential integr...

Docker multi-stage build in Action

Hi everyone, today I want to show how to create the small docker image for deploying the application. I've an application which consists of a backend(go application) and angular based front-end application. So let's create the Dockerfile and step by step fill it with commands. I started with frontend Next I added the golang builder For avoiding, the certificate signed by unknown authority error during HTTP request I add trusted certificates (details more here Stackoverflow issue ) Finally, copy all items to the end image I keep my container on the quay.io so everyone can see logs and pull the container docker pull quay.io/vdzundza/shoper All Dockerfile listing here Github Gist Thanks everyone !

Nginx rewrite rules for hosting angular(any) static app on subroute

Hi everyone, I decided to reorganise my personal blog and use it mostly as "Notes" Today, I want to host two websites served by golang application. The simplest solution is to create system service which points to go executable app on the particular port. In a nutshell, there are two separate services which use 9990 and 9991 ports. Next step I added this simple rule to the Nginx location /admin { rewrite /admin/(.*) /$1 break; proxy_pass http://localhost:9991; proxy_redirect off; proxy_set_header Host $host; } location / { proxy_pass http://localhost:9990; } So this simple configuration just rewrites URL properly to the admin service and I do not need to add extra `admin` route prefix. The latest step is set-up base href for the static `index.html` file. We can easily do it with build option `ng build --base-href /admin/` Thank everyone for reading.

Create table with dynamic rows and configurable row buttons with AngularJS

Hi all, Today I want to write a short article how to create a table with dynamic configuration for rows. For example, I need to render simple table by data provided from a server and append to each row some extendable buttons, checkboxes etc. for making action on a row. For example, I will use this data:   app.controller('MainCtrl', ['$scope', function($scope) { var vm = this; var tableData = [{ firstName: 'Viktor', lastName: 'Dzundza', age: 25 }, { firstName: 'Jony', lastName: 'Boyko', age: 24 }, { firstName: 'John', lastName: 'Doe', age: 45 }, { firstName: 'Alisa', lastName: 'Doe', age: 2 } ]; var tableMeta = { columns: [{ name: 'firstName', title: 'First Name' }, { name: 'lastName', title: 'Last Name' }, { name: 'age',...

Using jquery templates for adding form element dynamically in ASP.NET MVC

Hello friends. Today I wanna tell about some obstucles with validation which I've found when I had working with form. At first I've created two models for binding using System.Collections.Generic; using System.ComponentModel; using System.ComponentModel.DataAnnotations; using DataAnnotationsExtensions; namespace DynamicForm.Models { public class FormViewModel { public int? Id { get; set; } [Required] [StringLength(25, ErrorMessage = "Max firstname length is 25 symbols.")] [DisplayName("First name")] public string FirstName { get; set; } [Required] [StringLength(25, ErrorMessage = "Max lastname length is 25 symbols.")] [DisplayName("Last name")] public string LastName { get; set; } [Required] [Email(ErrorMessage = "Provide correct email address, please.")] [DisplayName("Email")] public string Email { ge...

Some notes about transportation problem

Hello guys. After work I remembered my studying at university. My first thoughts is about solving Monge–Kantorovich transportation problem using a modification of simplex method known as Method of Potentials. Transportation theory investigates methods for optimal allocation resources among consumers and transportation them with minimum cost. For example, suppose we have some factories which provide materials and shops which consume it. (To be continued)

Improving ...

Short account of what I did: - I signed up for Machine Learning Stanford course ( Link ); - I registered on AI&BigData conference in Odessa Link ; - I am trying to study Clojure. After studying Clojure I'll describe all troubles which I got during studying and I'll write about my impression of the conference too.

PHP Design Patterns - Strategy

Today I want to explain how to use strategy design pattern in PHP. I tried to use this pattern when I want decouple algorithms for calculating something at runtime. For example, we can dynamically changing methods which will be calculate price of some items using some logic. Create car, for example: namespace strategy; abstract class Item{ abstract function getPrice(); } class Car extends Item{ protected $price; public $name; protected $isTuned; public function __construct($name, $price, $isTuned){ $this->name = $name; $this->price = $price; $this->isTuned = $isTuned; } /** * @return bool */ public function isTuned(){ return $this->isTuned; } public function getPrice(){ return $this->price; } } Suppose we want to separate method which will calculate price with different strategies. Create interface which will be implemented in each strategy. namespace strategy; int...

Найлегший крок.

Отже свята пройшли тому пора займатися. Сьогодні був тест підйому в 4.00 годині і просте згадування формул вивчених на вихідних. Завтра встаю в 4.00 і сідаю вчитися. Покищо повторяю це  http://mmf.nsu.ru/sites/default/files/WH-GR.pdf  і елементарну теорію ймовірності, прийшлося на вихідних повторики трохи комбінаторики. З фінансової математики трохи змістився. Цікавить курс Artificial Intelligence (бажання освоїти від Yandex'a). Якщо не сьогодні то ніколи. Я спати.

Давно не писав

Я давно нічого нового не писав в блог. Дата публікації останньої статті аж за 9 вересня 2010 року а на вулиці скоро 2014 рік. Пройшло більше ніж 3 роки, а чи багато змінилося за цих три роки? Ну я закінчив університет, влаштувався на роботу. Зараз хочу почати писати деякі статті в блог, здебільшого заради вивчення нових трендів у програмуванні і структуризації своїх знань, думаю блог якраз для цього призначений. В мене трохи наполеонівські плани по вивченню всяких технологій, але я думаю що зможу. В принципі зараз я поставив собі вектор це js (як і front-end так і back-end) і фінансова математика. Також я вирішив повністю змінити свій розпорядок дня. Тепер в мене буде підйом мінімум в 6.00, далі планую перенести на 5.00. Кожний день (буду старатися) писати в блог як ідуть успіхи. Наразі все.

Практика

            Розкажу трохи про практики які я проходив за весь курс навчання в коледжі і університеті. Перша моя практика була на 2 курсі в коледжі. Це була двохтижнева практика на засвоєння курсу Pascal i C. Pascal ми вчили в першому семестрі а С почали вчити в другому. Сама практика почалась в  другому семестрі і С повністю ми не знали, я маю на увазі  - умови, цикли, масиви і тд. Перша програма на С  - звичайний ввід і вивід з обчисленням даних виглядала дуже складною. Але потім все пішло як по маслу. І в кінці практики я зробив висновок, що С легше вчити ніж Паскаль. Зараз, згадуючи ті завдання, я розумію, що вони були досить простенькими. Я не пам'ятаю чи була практика на 3 курсі.               Потім на 4 курсі (випускному) у нас мала бути виробнича практика. Постало питання, де проходити практику? Викладач нам порадив піти в фірму Eleks. Якщо пам'ять мене не зраджує одне із питань було про ...

MySQL Workbench

MySQL Workbench Community Edition . Мало того, що він сильно лагає так ще й пусті запити вміє виконувати. В MySQL Query Browser показує помилку 1065 'Query was empty', в phpmyadmin просто показує вікно "Не задано значення форми". Цікаво як себе поводить платна версія.

Canon IP1700 і Ubuntu

Встановив собі Ubuntu 10.04. Користуюсь вже приблизно 2 місяця. Ось виникла в мене потреба надрукувати пару сторінок. Колись в мене стояли дві операційні системи: Ubuntu i Windows. Якщо потрібно щось надрукувати то я переходив у віндовс і печатав. Але пару місяців тому я вирішив поставити тільки Ubuntu і завжди нею користуватись. Раніше я пробував ставити драйвера для мого принтера, але тоді я не надавав цьому важливого значення і все закінчувалось друком у віндовсі. Цього ж разу все було по іншому. Ставити знову віндовс заради єдиного друку це безглуздо. Першим ділом я завітав на офіційний сайт Canon, як виявилось Canon не піклується про користувачів своєї продукції, тому драйвера я там не знайшов. Я вирішив пошукати на форумах, напевно, таке питання вже в когось виникало. Погуливши, я знайшов драйвер для свого принтера, це виявився драйвер для IP2200. Але не все так просто. Драйвер досить старий і вимагав пакунка libcupsys2, в нових версіях замість нього використовується пакунок lib...

Університет нафти і газу

Всім привіт. Я поступив в національний технічний університет Нафти і Газу. Поступив на 2 курс, хоча мав б бути на третьому. Я дякую, за те, що поступив на другий курс на держ. форму. Але не все так просто. Потрібно перезаразувати години предметів, які вчили в універі на 1 і частково на 2 курсі, для того щоб без проблем перейти на 3 курс. На рахунок програмування, майже нічого нового немає. Хіба що будем вчити Java на на предметі "технологія розробки ПЗ". Ось і все, що я хотів написати. Всім удачі!

Індексатори у C#

Читав я книгу по С#. Дійшов до теми Індексатори.Прикольна штука. За допомогою індексаторів можна звертатись до полів класу(або і структури) через індекси, так як до масивів. Ось я набрав маленький приклад. Звичайно я сумніваюсь що хтось взагалі так робить, так як я написав. Код: using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class ListSample{ private List< string > UserList= new List< string >( 10 ); private List< string > AdminList= new List< string >( 10 ); private List< string > GuestList= new List< string >( 10 ); public void addUser( string name) { UserList.Add(name); } public void addAdmin( string name) { AdminList.Add(name); } public void addGuest( string name) { GuestList.Add(name); } public string this [ int i, int j] { get { switch (i) { cas...

Чому не оновлюється блог?

Дорогі читачі, якщо такі є, я не оновлюю блог оскільки зараз у мене проходить державний екзамен і підготовка до нього. Наповнювати блог я буду 100% , якщо буду займатися програмування професійно а не звичайне, нікому не потрібне, крім мене аматорство. :(

Основні принципи ООП.Інкапсуляція

Як відомо, Обєктно-орієнтоване програмування містить три основні принципи: інкапусляція, наслідування, поліморфізм. ООП появилося приблизно в 1960 роках, одна з перших мов ООП був Smalltalk . В коледжі в нас був спецкурс "ООП". Але все, що я запамятав це списаний конспект на 60 аркушів i синтаксис конструкторів на Object Pascal(Delphi) i C++. Влітку на канікулах я читав підручник по Java. Саме тоді я зрозумів, що таке Обєкт і Клас. Зараз на 4 курсі я вивчаю C#. Тому весь представлений код буде написаний на цій мові. Все що нас оточує як не парадоксально це обєкти: Телевізор, Магнітофон, Автомобіль, Клієнт(банку чи ще якоїсь установи). Класс - це новий тип даних, який описує структуру обєкта і методи, які задають поведінку обєкта. Наприклад, автомобіль(який небудь) є екземпляром класу "Автомобілі". Тобто клас це тільки схема, опис обєкта. Отже, шо таке класс і обєкт розібралися. Код: using System; using System.Collections.Generic; using System.Linq; using Syste...

Перша стаття

Це моя перша стаття. Дуже задоволений, що створив свій блог. Постраюсь його зажди наповнювати цікавими статтями з області програмування.