Ведение блога в ИТ

User avatar
crypto5
Уже с Приветом
Posts: 4637
Joined: 24 Oct 2009 01:38
Location: Chicago ;-) -> SFBA!

Re: Ведение блога в ИТ

Post by crypto5 »

Интеррапт wrote:
crypto5 wrote:
Интеррапт wrote:
crypto5 wrote:А вот если окажется что барберов 10, то мне нужно будет одну цифру поменять, а ты будешь плодить баги и дедлоки :radio%:
Просто тебе стыдно стало, что ты кучу потоков развел на ровном месте. Джавис, что тут скажешь.
Столько же сколько и ты развел :-)
Да я даже не про этот конкретный случай, а про F/J Pool c I/O операциями :D
Ну твоего "малопоточного" кода я так и не увидел :pain1:
In vino Veritas!
User avatar
Интеррапт
Уже с Приветом
Posts: 17281
Joined: 07 Sep 2011 10:05
Location: Seattle, WA

Re: Ведение блога в ИТ

Post by Интеррапт »

А я уже показал псевдокод и обьяснил концепцию. Обычный асинхронный read без выкрутасов.
User avatar
crypto5
Уже с Приветом
Posts: 4637
Joined: 24 Oct 2009 01:38
Location: Chicago ;-) -> SFBA!

Re: Ведение блога в ИТ

Post by crypto5 »

Интеррапт wrote:А я уже показал псевдокод и обьяснил концепцию. Обычный асинхронный read без выкрутасов.
Я думаю если ты начнешь его реализовывать то обнаружишь что выкрутасы там присутствуют.
In vino Veritas!
User avatar
Интеррапт
Уже с Приветом
Posts: 17281
Joined: 07 Sep 2011 10:05
Location: Seattle, WA

Re: Ведение блога в ИТ

Post by Интеррапт »

crypto5 wrote:
Интеррапт wrote:А я уже показал псевдокод и обьяснил концепцию. Обычный асинхронный read без выкрутасов.
Я думаю если ты начнешь его реализовывать то обнаружишь что выкрутасы там присутствуют.
Вряд-ли обнаружу. Все очень просто и логично.
Zorkus
Уже с Приветом
Posts: 6969
Joined: 26 Feb 2011 17:40

Re: Ведение блога в ИТ

Post by Zorkus »

Бенчмарки-то где?
User avatar
crypto5
Уже с Приветом
Posts: 4637
Joined: 24 Oct 2009 01:38
Location: Chicago ;-) -> SFBA!

Re: Ведение блога в ИТ

Post by crypto5 »

Интеррапт wrote:
crypto5 wrote:
Интеррапт wrote:А я уже показал псевдокод и обьяснил концепцию. Обычный асинхронный read без выкрутасов.
Я думаю если ты начнешь его реализовывать то обнаружишь что выкрутасы там присутствуют.
Вряд-ли обнаружу. Все очень просто и логично.
Ненаписанный код всегда такой :D
In vino Veritas!
Berlaga
Уже с Приветом
Posts: 1008
Joined: 24 Mar 2010 21:14
Location: SFBA

Re: Ведение блога в ИТ

Post by Berlaga »

crypto5 wrote:
Интеррапт wrote: Вряд-ли обнаружу. Все очень просто и логично.
Ненаписанный код всегда такой :D
:lol: В точку. :great:
User avatar
Leo_G
Уже с Приветом
Posts: 576
Joined: 15 Jan 2005 06:08
Location: Samara -> Vancouver, CAN

Re: Ведение блога в ИТ

Post by Leo_G »

Sergunka wrote:Так уж вышло, что получив неделю бана решил с пользой для себе провести время и начать вести ИТ блог.

Без особых заморочек пришлось взять поначалу наиболее прстую схему изложения в духе еду-вижу максимально напирая на знания и детали работающего кода. Из движков вроде как мне подошел WordPress.com с довольно простенькой и эффективной заяснялкой как оформлять код на станице

http://en.support.wordpress.com/code/po ... urce-code/

Если совсем коротко то за неделю удалось написать три статьи, что видимо эквивалентно десятку другому постов на привете :D

Собственно сам блог http://vyatkins.wordpress.com/ - если читать лень, то кликните накрутите пейджинг :fr:

Если кто ведет свой собственный блог в ИТ было бы неплохо обменятся опытом и послушать людей бывалых :fr:

Из очевидных преимуществ блога вижу пока две - можно показать свой уровень изложения + понимание специальной области, что как ни-крути должно характеризовать кандидата на позицию с лучшей стороны... ну, хотя бы положительно, что не ленив :oops: и жаден :gen1:
И все... блог уже заброшен??
Вот взять бы всю парикмахерскую дискуссию отсюда и запостить в блог. Будет очень интересно. И делать особо ничего не надо, копи-паст.
Блог живой нужен.
Biztalkien
User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15475
Joined: 27 Sep 2007 22:53

Re: Ведение блога в ИТ

Post by Мальчик-Одуванчик »

Ага а потом еще немножко усложнить задачку разрешив одному парикмахеру обслуживать нескольких посетителей
AxelA
Новичок
Posts: 46
Joined: 23 Apr 2011 18:43
Location: WA

Re: Ведение блога в ИТ

Post by AxelA »

Интеррапт wrote:Ну раз пошла такая пьянка, то и мы парикмахера напишем:
Гулять так гулять. Достаем из шир.. то есть тяжелую артилерию.
C++ с модными 11x свистелками и перделками.

Code: Select all

#include <stdio.h>

#include <atomic>
#include <condition_variable>
#include <deque>
#include <memory>
#include <mutex>
#include <queue>
#include <thread>
using namespace std;

class Barber;
class Client;
class Shop;
typedef shared_ptr<Client> ClientPtr;


static const int NUM_CHAIRS = 5;
static const int NUM_CLIENT_THREADS = 20;
static chrono::milliseconds BARBER_SESSION_TIME(50);
static chrono::milliseconds PAUSE_BETWEEN_CLIENTS(200);

class Client
{
public:
	const int _id;
	Client(int id) : _id(id) {};
};

class Shop
{
public:
	bool Serve(ClientPtr client)
	{
		lock_guard<mutex> guard(_lock);
		if (!_waitLine.empty() || _chair != nullptr)
		{
			if (_waitLine.size() >= NUM_CHAIRS)
			{
				printf("Client %d left unsatisfied.\n", client->_id);
				return false;
			}
			_waitLine.push(client);
			printf("Client %d is wating.\n", client->_id);
		}
		else
		{
			assert(_chair == nullptr);
			_chair = client;
			printf("Client %d is about to be served.\n", client->_id);
		}
		_signal.notify_one();
		return true;
	}
private:
	friend class Barber;

	ClientPtr GetNextClient()
	{
		while (true)
		{
			unique_lock<mutex> guard(_lock);
			if (_chair == nullptr && !_waitLine.empty())
			{
				_chair = _waitLine.front();
				_waitLine.pop();
			}
			if (_chair != nullptr)
			{
				return _chair;
			}
			printf("Barber is sleeping.\n");
			_signal.wait(guard);
			printf("Barber wakes up.\n");
		}
	}

	void DoneWithClient()
	{
		lock_guard<mutex> guard(_lock);
		assert(_chair != nullptr);
		_chair = nullptr;
		if (!_waitLine.empty())
		{
			_signal.notify_one();
		}
	}

	mutex _lock;
	condition_variable _signal;
	queue<ClientPtr> _waitLine;
	ClientPtr _chair;
};


class Barber
{
public:
	Barber(Shop& shop) : _shop(shop) {};
	void run()
	{
		while (true)
		{
			ClientPtr client = _shop.GetNextClient();
			CutEverything(client);
			_shop.DoneWithClient();
		}
	}
private:
	void CutEverything(ClientPtr client)
	{
		printf("Serving client#%d.\n", client->_id);
		this_thread::sleep_for(BARBER_SESSION_TIME);
	}

	Shop& _shop;
};

static void ClientThread(Shop* shop)
{
	static atomic_int clientID;

	while (true)
	{
		ClientPtr client = make_shared<Client>(clientID++);
		shop->Serve(client);
		this_thread::sleep_for(PAUSE_BETWEEN_CLIENTS);
	}
}

static void BarberThread(Shop* shop)
{
	Barber barber(*shop);
	barber.run();
}

static void test()
{
	Shop shop;
	thread barberThread(&BarberThread, &shop);

	thread clientThreads[NUM_CLIENT_THREADS];
	for (int i = 0; i < NUM_CLIENT_THREADS; i++)
	{
		clientThreads[i] = thread(ClientThread, &shop);
	}

	this_thread::sleep_for(chrono::hours(1000));
}

void main()
{
	test();
}
User avatar
Интеррапт
Уже с Приветом
Posts: 17281
Joined: 07 Sep 2011 10:05
Location: Seattle, WA

Re: Ведение блога в ИТ

Post by Интеррапт »

Ну хоть не Фибоначчи :D
User avatar
Ljolja
Уже с Приветом
Posts: 2924
Joined: 01 Apr 2004 04:22

Re: Ведение блога в ИТ

Post by Ljolja »

crypto5 wrote:
Интеррапт wrote:
crypto5 wrote:
Интеррапт wrote:А я уже показал псевдокод и обьяснил концепцию. Обычный асинхронный read без выкрутасов.
Я думаю если ты начнешь его реализовывать то обнаружишь что выкрутасы там присутствуют.
Вряд-ли обнаружу. Все очень просто и логично.
Ненаписанный код всегда такой :D
+1 :D типа, а теперь вы под моим чутким руководством его за 5 мин реализуете (ето типа когда из не очень хороших кодеров получаются очень promising managers) Интеррапт, не принимай на свой счет
Я боюсь, что наступит день, когда технологии превзойдут простое человеческое обшение. И мир получит поколение идиотов (c)
User avatar
Леонид Ильич Брежнев
Уже с Приветом
Posts: 8628
Joined: 22 Mar 2011 01:40

Re: Ведение блога в ИТ

Post by Леонид Ильич Брежнев »

Зряплата в 150 К+ для человека с 25-ю годами опята в IT, это ближе к уровню принзипала/архитектора (если уже не этто уровень). Блог про фибоначи или барберов это как-то совершенно не серьезно. Тут либо должно быть сказочное резюме с подробным описанием страниц на семь, либо изучение чего-то там глубинного в threads, изучение работы GC, та же Кассандра, но из глубоких нутрей. Это вот уровень для такого человека.
Ну или всякие хелперы, типа мои дорогие читатели, я сильно седомуд и стар, и забыл в разы больше, чем вы знали, посему вот эти три десятка ключей к tcpdump написаны мною, что бы про них не забыть.
Сабина
Уже с Приветом
Posts: 19041
Joined: 11 Jan 2012 09:25
Location: CA

Re: Ведение блога в ИТ

Post by Сабина »

Леонид Ильич Брежнев wrote:Зряплата в 150 К+ для человека с 25-ю годами опята в IT, это ближе к уровню принзипала/архитектора (если уже не этто уровень). Блог про фибоначи или барберов это как-то совершенно не серьезно. Тут либо должно быть сказочное резюме с подробным описанием страниц на семь, либо изучение чего-то там глубинного в threads, изучение работы GC, та же Кассандра, но из глубоких нутрей. Это вот уровень для такого человека.
Ну или всякие хелперы, типа мои дорогие читатели, я сильно седомуд и стар, и забыл в разы больше, чем вы знали, посему вот эти три десятка ключей к tcpdump написаны мною, что бы про них не забыть.
В наше время никто не будет читать резюме в семь страниц. Даже если оно от самого господа бога.
https://www.youtube.com/watch?v=wOwblaKmyVw
User avatar
Интеррапт
Уже с Приветом
Posts: 17281
Joined: 07 Sep 2011 10:05
Location: Seattle, WA

Re: Ведение блога в ИТ

Post by Интеррапт »

Сабина wrote:В наше время никто не будет читать резюме в семь страниц.
У меня резюме ровно на одну страницу. Потому, что всякие свои работы 15-летней давности можно описать двумя строчками и еще одну строчку на список использовавшихся при этом языков, технологий. Все-равно никто не будет вникать в тонкости того, что ты делал 10-15 лет назад.
User avatar
Леонид Ильич Брежнев
Уже с Приветом
Posts: 8628
Joined: 22 Mar 2011 01:40

Re: Ведение блога в ИТ

Post by Леонид Ильич Брежнев »

Сабина wrote:
Леонид Ильич Брежнев wrote:Зряплата в 150 К+ для человека с 25-ю годами опята в IT, это ближе к уровню принзипала/архитектора (если уже не этто уровень). Блог про фибоначи или барберов это как-то совершенно не серьезно. Тут либо должно быть сказочное резюме с подробным описанием страниц на семь, либо изучение чего-то там глубинного в threads, изучение работы GC, та же Кассандра, но из глубоких нутрей. Это вот уровень для такого человека.
Ну или всякие хелперы, типа мои дорогие читатели, я сильно седомуд и стар, и забыл в разы больше, чем вы знали, посему вот эти три десятка ключей к tcpdump написаны мною, что бы про них не забыть.
В наше время никто не будет читать резюме в семь страниц. Даже если оно от самого господа бога.
Ты эти сказки кому-нибудь другому рассказывай. Кому надо, тот прочтет. Ну и если это не резюме кодера, у которого на все 7 страниц одно и тоже, писал HelloWorld в конторе "А", писал HelloWorld в конторе "Б", и так далее. А что-нибудь значительно более коровое.
User avatar
Komissar
Уже с Приветом
Posts: 64661
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

Re: Ведение блога в ИТ

Post by Komissar »

ну 2 страницы максимум, Ильич. А многостраничные резюмы уже прочно ассоциируются с Н1бишной индусятиной, кто пишет больше строчек в резюме о якобы своем проекте, чем строчек кода, который в реале они зачекинили для проекта.
User avatar
Интеррапт
Уже с Приветом
Posts: 17281
Joined: 07 Sep 2011 10:05
Location: Seattle, WA

Re: Ведение блога в ИТ

Post by Интеррапт »

Komissar wrote:ну 2 страницы максимум, Ильич. А многостраничные резюмы уже прочно ассоциируются с Н1бишной индусятиной, кто пишет больше строчек в резюме о якобы своем проекте, чем строчек кода, который в реале они зачекинили для проекта.
Многостраничные резюме (особенно на 5-7 страниц) просто тупо бесполезны. Девелоперы, которые будут интервьюировать кандидата, дальше 1-й или 2-й страницы не пойдут, ну может лениво глянут названия компаний на остальных страницах.
User avatar
stenking
Уже с Приветом
Posts: 14407
Joined: 26 May 2006 02:39

Re: Ведение блога в ИТ

Post by stenking »

Во, во. А сделать сайтик с подробностями это хорошо.
Бога нет.
Сабина
Уже с Приветом
Posts: 19041
Joined: 11 Jan 2012 09:25
Location: CA

Re: Ведение блога в ИТ

Post by Сабина »

Сергунька, я посмотрела куда ты устроился. Вам надо с Зоркусом на ланч сходить ;)
PS. Кстати ты не в курсе чего они нанимают так много ? После переезда народ отваливается потому что не хотят в истбей мотаться ? Или это объективно на валила масса новых проектов ?
Last edited by Сабина on 13 Feb 2014 17:43, edited 1 time in total.
https://www.youtube.com/watch?v=wOwblaKmyVw
Сабина
Уже с Приветом
Posts: 19041
Joined: 11 Jan 2012 09:25
Location: CA

Re: Ведение блога в ИТ

Post by Сабина »

stenking wrote:Во, во. А сделать сайтик с подробностями это хорошо.
Да я именно про это. Резюме в одну страницу - это идеально
https://www.youtube.com/watch?v=wOwblaKmyVw
User avatar
valchkou
Уже с Приветом
Posts: 4185
Joined: 27 Apr 2011 03:43
Location: Сергели ->Chicago

Re: Ведение блога в ИТ

Post by valchkou »

Сабина wrote:
stenking wrote:Во, во. А сделать сайтик с подробностями это хорошо.
Да я именно про это. Резюме в одну страницу - это идеально
у меня было так, но после распросов и фитбэков я отановился на таком варианте.
1-я страница - саммари.
2-я страница - детальное описание свежих интересных проектов и достижений, достойное моего внимания.
3-я страница - все остальное legacy по 3 строчки вкратце.
User avatar
Интеррапт
Уже с Приветом
Posts: 17281
Joined: 07 Sep 2011 10:05
Location: Seattle, WA

Re: Ведение блога в ИТ

Post by Интеррапт »

valchkou wrote:
Сабина wrote:
stenking wrote:Во, во. А сделать сайтик с подробностями это хорошо.
Да я именно про это. Резюме в одну страницу - это идеально
у меня было так, но после распросов и фитбэков я отановился на таком варианте.
1-я страница - саммари.
2-я страница - детальное описание свежих интересных проектов и достижений, достойное моего внимания.
3-я страница - все остальное legacy по 3 строчки вкратце.
Что же это за саммари такое, которое целую страницу занимает?
User avatar
valchkou
Уже с Приветом
Posts: 4185
Joined: 27 Apr 2011 03:43
Location: Сергели ->Chicago

Re: Ведение блога в ИТ

Post by valchkou »

Интеррапт wrote:
valchkou wrote:
Сабина wrote:
stenking wrote:Во, во. А сделать сайтик с подробностями это хорошо.
Да я именно про это. Резюме в одну страницу - это идеально
у меня было так, но после распросов и фитбэков я отановился на таком варианте.
1-я страница - саммари.
2-я страница - детальное описание свежих интересных проектов и достижений, достойное моего внимания.
3-я страница - все остальное legacy по 3 строчки вкратце.
Что же это за саммари такое, которое целую страницу занимает?
да у меня там только fist last names на пол страницы 40 фриштом, и портянка из work history.
User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15475
Joined: 27 Sep 2007 22:53

Re: Ведение блога в ИТ

Post by Мальчик-Одуванчик »

Леонид Ильич Брежнев wrote:Блог про фибоначи или барберов это как-то совершенно не серьезно. Тут либо должно быть сказочное резюме с подробным описанием страниц на семь, либо изучение чего-то там глубинного в threads, изучение работы GC, та же Кассандра, но из глубоких нутрей. Это вот уровень для такого человека.
Да вот нифига - то же решение Фибоначчи с использованием трамплинов (trampolines) вполне себе и на статью в приличном журнале тянет. А задачка парикмахера - вообще прекрасный пример для иллюстрации наиболее сильных возможностей того или иного языка, в чем дискуссия, развернутая crypto5 можут служить лучшим тому подтверждением. У самого возникла мысль сделать сравнительный анализ возможностей разных подходов, предлагаемых интеловской студией.

Return to “Работа и Карьера в IT”