Showing posts with label programmazm. Show all posts
Showing posts with label programmazm. Show all posts

2012/11/21

BDSM reminder

-Werror -Wall -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wconversion 
-Wfloat-equal -Wformat=2 -Wlogical-op -Wnested-externs -Wno-missing-braces 
-Wno-missing-field-initializers -Wold-style-definition -Wpointer-arith 
-Wredundant-decls -Wshadow -Wstrict-aliasing=2 -Wstrict-overflow=5 
-Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wundef -Wunreachable-code -Wwrite-strings

(c) _winnie

2012/11/03

How to determine if a number is a prime with regex?

public static boolean prime(int n) {
  return !new String(new char[n]).matches(".?|(..+?)\\1+");
}
The explanation is on the StackOverflow.

2012/10/10

Programming Jargon Dictionary

Wonderful jargonisms from StackOverflow by bsstahl.
  • Automanually
    Used to refer to a batch job or application that should be scheduled or triggered automatically, but due to unspecified reasons requires manual intervention every time. (not the same as automagically)
  • Boolean Zen
    The proper practice of using boolean expressions directly without testing for equality to true or false.
  • Common Law Feature
    A bug in the application that has existed for so long that it is now part of the expected functionality.
  • Disaster Driven Development
    When Your PMs and salesmen promised that You will build a "space shuttle" in one month.
  • Egyptian Brackets
    Describes the god-awful c-style where curly-braces are not aligned.

2012/07/03

How to learn Haskell

A very nice and clear answer from stackoverflow by nanothief.

I'm going to order this guide by the level of skill you have in haskell, going from an absolute beginner right up to an expert. Note that this process will take many months (years?), so it is rather long.
Absolute Beginner
Firstly, haskell is capable of anything, with enough skill. It is very fast (behind only c and c++ in my experience), and can be used from anything from simulations, servers, guis and web applications.
However there are some problems that are easier to write for a beginner in haskell than others. Mathematical problems and list process programs are good candidates for this, as they only require the most basic of haskell knowledge to be able to write.

2012/06/29

Редактирование истории в git

Неплохая шпаргалка от Максима Чистолинова.

Сорри за <pre>, но переформатировать мне лень.
Более строго следует говорить не о "редактировании" или "изменении" истории,
а о cоздании "альтернативной" истории. Если специально ничего не предпринимать,
в репозитории git остаются все объекты "старой" истории, соответствующие
предыдущим коммитам и версиям файлов.
На эти объекты не будут "ссылаться" ветки, но если Вы вспомните их SHA1-ключи,
либо как-то специально позаботитесь их "пометить" (тэгом, или другой веткой),
то старая история будет c точки зрения git "ничем не хуже" новой.

2012/02/06

С++11 books release plan.

Спер фотографию у Алены.На будущее.
Доклады с GoingNative 2012 доступны тут. Жду записи выступления Саттера.

2011/08/28

История программирования в СССР. Часть о ДЕМОСе.

В продолжение серии "очередная" часть, уже коллективного авторства: Давидов М.И., Руднев А.П., Антонов-ст., Егошин, Мазепа, Бардин и редактор vi.
Первоисточник находится тут. За ссылку спасибо sir66

Последняя правка текста, как я понимаю, относится где-то к 1999 году. Любопытно взглянуть на последнюю часть с точки зрения взлета дот комов.

И красной строкой, для меня лично:
Обратите внимание, раскол в Демосе произошел в среде программистов не по вопросам системного программирования, а по вопросу организации. В любом случае, если бы нам хватило рыночной компетентности, мы бы не упустили случая создать лучшую в стране программисткую компанию.


В этой части


ВСЯ ПРАВДА О ДЕМОСЕ ... ИЗ "ПЕРВЫХ РУК" С КОММЕНТАРИЯМИ УЧАСТНИКОВ СОБЫТИЙ
Десятилетию Демоса посвящается
Я решил это написать, когда заметил, что жить осталось маловато (все мы под Богом), а информация, которая появляется, совсем далека от действительности...
    А это мои комментарии. Руднев А.П. (Руднев)
    А это - мои. avg (Антонов-ст.)
    Ну а это - мои крохотные. egoshin (Егошин)
    А это - мои. Ирина Мазепа (Мазепа)
    "Заметки на полях" Валеры Бардина (Бардин)
    От редактора (vi)
Началось все примерно в 1983 году. "Наши" люди сподобились вытащить Unix v7 прямо с VAXа Калифорнийского университета в Беркли (Сан Диего). (Не-а, в Беркли, что напротив Сан-Франциско; хорошее место, траву прям на улице курят. Что и объясняет особенности берклеского юникса. (Антонов-ст.))

2011/08/17

Effective Concurrency

Узелок на память: статьи Герба Саттера из серии "Effective Concurrency" доступны через его блог (eng конечно же). Английская книга, судя вот по этому сообщению, выйдет не раньше следующего года. Русская - ну вы поняли.

2011/04/06

История программирования в СССР. Часть II.

Первая часть тут.

В этой части

Я выделил 12-ю часть, т.к. мне она показалась наиболее интересной и во многом - актуальной.

Update: Автор заметок Самуил Любицкий. Тридцать лет проработал в Киеве, потом еще десять – в Торонто. Продолжает пока трудиться по-прежнему программистом.

Update 2 (от 2011-08-28). Еще одна статья, продолжающая данную серию. История ДЕМОС-а.

История программирования в СССР. Часть I.

Наткнулся в сети на любопытные воспоминания человека, работавшего с машинами аж с 1966 года. Хорошо, легко и, как мне кажется, объективно написано программистом - практиком, что особенно ценно для меня.

В этой части

Update: Автор заметок Самуил Любицкий. Тридцать лет проработал в Киеве, потом еще десять – в Торонто. Продолжает пока трудиться по-прежнему программистом.

2011/03/27

C++ 0x Final Draft

25 марта в Мадриде был таки принят Final Draft для C++ 0x (c++ 0xB?). У Страуструпа в FAQ можно ознакомиться с нововведениями.

Из неожиданного: в обсуждениях на слэшдоте говорится, что std::list::size() теперь должна выполняться за константное время.

Качать, если кому надо, можно отсюда.

2011/02/21

Branching with git

Подсмотрел очень наглядную статью про организацию веток с помощью git-а. Картинки кавайные, английский простой.

2011/01/28

Commit message genenerator

Если фантазия подистощилась.
http://whatthecommit.com/

  • This is why the cat shouldn't sit on my keyboard.
  • I know what I am doing. Trust me.
  • pay no attention to the man behind the curtain
  • don't be retarded.
  • changed things...

2010/06/24

PERT

Показали мне тут на работе довольно интересную методику расчета estimates под названием PERT (Program Evaluation Review Technique). Суть в работе с вероятностыми оценками элементарных задач. т.е. дается оптимистичная (optimistic), нормальная (likely) и пессимистичная (pessimistic) оценки времени.

Скажем, оптимистичная подразумевает вероятность успеха в 5%, нормальная - 50%, а пессимистичная - 95%. После чего, все такие оценки представляются следующими характеристиками:
1. mean=(optimistic+(4*likely)+pessimistic)/6; это ожидаемое время окончания.
2. stdev=(pessimistic–optimistic)/6; это среднеквадратичное отклонение.
Ну и последний этап - это расчет всего времени проекта как суммы случайных величин, т.е. mean' это сумма mean, а stdev' - это корень из суммы квадратов всех stdev.
Для перехода к представлению (optimistic, likely, pessimistic) используется следующая формула:
(mean-3*stdev,mean,mean+3*stdev).


А теперь в чем же собственно прикол использования этого метода. Он позволяет учесть в суммарной оценки все найденные и оцененные риски, и при этом выдать адекватные рамки времени для проекта.

Да, и более детальное объяснение можно почитать тут (англ).

2010/01/19

ШнГ


Обзор 10 моноширинных шрифтов. Эстетство, конечно, но может пригодиться. Суть сводится к тому, что Consolas - лучший (c анти-алайзингом). Добывается примерно так:
$wget http://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/PowerPointViewer.exe
$cabextract -F ppviewer.cab PowerPointViewer.exe
$cabextract -F *.ttf ppviewer.cab

2009/12/29

Programming Paradigms for Dummies

What Every Programmer Should Know. Particularly recommend the "Taxonomy of programming paradigms (Fig 2)".

2009/12/18

Our industry is one that fundamentally changes every few years or so. The worst thing you can do is to not keep up and let yourself stagnate.

В общем-то прописные истины. Но время от времени стоит вспоминать о них.

2009/12/05

рабоче-крестьянское


Refactoring: фарш невозможно провернуть назад.