hirthwork
27.11.2012 06:06
посоны, посоветуйте сервис, который бы позволял организовывать идеи касательно чего-то. что-то среднее между rational rose и freemind. чтобы можно было составить отношения между сущностями, вписать код внутри, чтобы можно было какие-то части пометить как готовые, чтобы при наличии свободного времени не нужно было ... more →
hirthwork
25.11.2012 19:23
Часть первая: полезная.
Всем желающим писать хттп-сервер на жабке и кому не подходит HttpCore вовсе не
обязательно костылить свой велосипед. Оказывается начиная с JDK 1.6 уже есть
простой и понятный сервер:
http://docs.oracle.com/javase/7/docs/api...
Не умеет только давать возможность вешать ... more →
hirthwork
22.11.2012 07:52
Аналогом английского LGTM при code-review является отечественное УМВР
hirthwork
13.11.2012 22:22
пстач, допустим есть код на рагеле, который парсит упрощённые хосты с userinfo и портами:
port = (":" . digit*) $add_port_char %print_port %lerr(clear_port);
userinfo = (alnum | ":")+;
name = alnum+;
host = ((userinfo "@")? . name) $add_host_char %print_host;
main := host . port?;
очевидно, что при разборе ... more →
hirthwork
11.11.2012 15:54
// на последний тег не смотрите, на нём только мой примёр.
// область применения ограничивается лишь рагелем.
итак, настало время охуительных историй.
как известно, нормальные пацаны (типа Сысоева) вешают на обработки кучи сокетов
всего один поток и делают select. Пришли данные в сокет — просыпается ... more →
hirthwork
03.11.2012 15:40
Как известно, у Object.wait(long timeout) может случиться преждевременная эя^W^W spurious wakeup. т.е. interrupt() не делали, таймаут не истёк, notify() не посылали, а он, подлец такой, всё равно взял да и разблокировал поток до завершения операции, которую ожидал. возникает вопрос что делать с таймаутом в данном ... more →
hirthwork
26.10.2012 05:47
Интересно, а под спидами как программируется? Увеличивается ли скорость набора? Растёт ли тырпрайзность кода? Возможно ли потом восстановить проект до компилируемого состояния?
hirthwork
21.10.2012 14:47
экспериментально установлено, что если удалить из интерфейса два метода из трёх, то сложность завязанного на него кода уменьшается в три раза. удобство поддержки также возрастает на не изученную пока что величину.
hirthwork
19.10.2012 08:25
Agnostic Drived Development: не знаешь что написать — пиши throw new UnsupportedOperationException();
hirthwork
17.10.2012 08:25
похмелье — лучше состояние для написания юнит-тестов. впрочем для любой нудной работы, которую всё таки нужно иногда делать.
hirthwork
16.10.2012 10:33
получить контент всего ресурса в одну строку: byte[] data = Files.readAllBytes(new File(getClass.getResource("resource.name").toURI()).toPath());
hirthwork
15.10.2012 06:50
когда-нибудь, когда я порабощу мир, я найду и зверски казню многих разработчиков опенсурсных библиотек. ПОТОМУ ЧТО НЕХУЙ КИДАТЬ UNCHECKED EXCEPTIONS, СУКИ!
hirthwork
14.10.2012 12:13
На будущее: никогда не делать CountingOutputStream через FilterOutputStream. На будущее №2: в пизду FilterOutputStream.
hirthwork
12.10.2012 12:47
Посмотрел как сделан OutputStreamWriter в icedtea.
Объясните, почему этот адпизды нельзя было написать просто как:
void write(char[] cbuf, int off, int len) {
ByteBuffer buffer = charset.encode(CharBuffer.wrap(cbuf, off, len));
stream.write(buffer.array(), 0, buffer.limit());
}
hirthwork
12.10.2012 08:41
трабла: делаю dlsym и передаю имя сишной апишки, получаю ошибку, что не может найти такого символа в либе. запускаю nm. среди прочего вижу эту апишку и букву T рядом. т.е. всё пучком. либу открываю в dlopen по полному пути с передачей RTLD_DEEPBIND. в какую сторону копать?
hirthwork
08.10.2012 15:44
посоны, а поделитесь ссылкой на реализацию FileSystemProvider, который прокидывает доступ к http-серверу? ну, то бишь я делаю, например, FileSystems.newFileSystem(URI.create(" http://tools.ietf.org/rfc/rfc896.txt"), env); а оно мне даёт возможность random-access доступа к этому файлу, как если бы это был файл на ... more →
hirthwork
05.10.2012 06:56
В программе всё должно быть прекрасно: и стиль, и классы, и эксепшены, и call flow.
hirthwork
30.09.2012 15:04
чтобы не написать код слишком быстро, я думаю о сексе
hirthwork
29.09.2012 13:48
у мну конечно не TDD нихуя (ибо я ленивый дохуя и ни одной книжки по матчасти не прочёл), но тем не менее, за последние два дня, в процессе задрачивания code coverage я отловил три баги. не стесняйтесь, посоны, дрочите свой code coverage, чтобы он стал большим и блестящим
hirthwork
20.09.2012 17:16
Вот читаешь спецификацию HTTP, или там MIME, охуенные же форматы. Умели раньше
люди создать нечто охуенно гибкое, и в то же время удобное для использования и
даже чтения глазами. А сейчас? XML — ебучая лесенка с дублированием. JSON —
хуярят в одну строчку, хуй разберёшь, чего понаписали.
Нахуй, олдскул нам поможет.
hirthwork
18.09.2012 12:50
Две недели втуплял как написать один сервер со сложной обработкой данных.
Сегодня положил хуй на «думать» и стал хуярить TDD. Всегда есть возможность для
маневра и всегда знаешь, что ничего не поломал.