среда, 25 марта 2009 г.

Top 100 Best Software Engineering Books

Подкинули ссылку на интересный кнол. Jurgen Appelo собрал топ 100 книг по теме "Software Engineering" или по русски "Разработка программного обеспечения". Для составления списка использовался Amazon.Для интересующихся приведены критерии отбора и технология подсчета рейтинга в конце кнола. Интересной особенностью списка является максимальная нейтральность по отношению к конкретным технологиям: Java, .NET, Ruby и PHP.

Самообразованию нет предела!

PS. читая Майкла Физерса прояснил некоторые вещи касаемо unit тестирования, которые ранее не мог понять.
PSS. стал больше времени уделять чтению технической литературы, полезно ;-)

quarkus за ссылку respect 8-)

четверг, 19 февраля 2009 г.

Денис Войханский - Социальные аспекты разработки

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

Ключевые мысли:
Нацеливание команды на успех
Закон Листера
Закон Паркинсона
Good ожидания от человека
Больше доверия
Хорошие условия работы
Команда равных
Самоуправляемые команды
Daily Meetings
Iterations

UPD.
И в догонку - Социальные аспекты руководства, или как же всё таки «пинать» сотрудников. 2 года спустя.

четверг, 29 января 2009 г.

Как сделать скриншот программы?

How to take ScreenShot in C# or Visual Basic?

C#
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;

private string TakeScreenShotFileName()
    {
      string screenshot = null;

      if (Application.OpenForms.Count > 0)
      {
        Bitmap bmp;
        Graphics gr;
        Rectangle bounds = Application.OpenForms[0].Bounds;

        screenshot = System.IO.Path.GetTempFileName();

        bmp = new Bitmap(bounds.Width, bounds.Height);

        gr = Graphics.FromImage(bmp);
        gr.CopyFromScreen(Application.OpenForms[0].Location, Point.Empty, bounds.Size);

        bmp.Save(screenshot, ImageFormat.Jpeg);
      }

      return screenshot ?? "";
    }


* This source code was highlighted with Source Code Highlighter.


VB
Imports System.Drawing
    Private Function TakeScreenshotFileName() As String
      Dim bounds As Rectangle = My.Application.MainForm.Bounds
      Dim fileNAme As String = Nothing

      Using b As New Bitmap(bounds.Width, bounds.Height)
        Using g = Graphics.FromImage(b)
          g.CopyFromScreen(My.Application.MainForm.Location, Point.Empty, bounds.Size)
        End Using
        fileNAme = System.IO.Path.GetTempFileName()
        b.Save(fileNAme, Imaging.ImageFormat.Jpeg)
      End Using
      Return fileName
    End Function


* This source code was highlighted with Source Code Highlighter.

вторник, 16 декабря 2008 г.

Получил Боекомплект разработчика

Нашел для себя очень полезными 6 книг из 8. Теперь осталось найти место у себя в голове и на книжной полке, с первым проблем никаких, а вот со второй проблемой придется повозится ;-)
В состав боекомплекта вошли следующие книги:

  1. Рихтер Дж. - CLR via C#. Программирование на платформе Microsoft .NET Framework 2.0 на языке C#. Мастер-класс. / Пер. с англ. - 2-е изд., исправ. - М. : Издательство "Русская редакция"; СПб.: Питер, 2008. - 656 стр. : ил. ISBN 978-5-7502-0348-2

  2. Рихтер Дж. - Windows для профессионалов: создание эффективных Win32-приложений с учетом специфики 64-разрядной версии Windows / пер. с англ. - 4-е изд. - СПб.: Питер; М.: Издательство "Русская редакция"; 2008. - 720 стр.: ил. ISBN 978-5-7502-0360-4

  3. Роббинс Джон - Отладка приложений Microsoft .NET И Microsoft Windows /Пер. с англ. - М.: Издательско-торговый дом "Русская Редакция", 2004. - 736 стр.: ил. ISBN 5-7502-0243-7

  4. Руссинович М., Соломон Д. - Внутреннее устройство Microsoft Windows.Windows Server 2003, Windows XP и Windows 2000. Мастер-класс. / Пер. с англ. - 4-е изд. - М.: Издательство "Русская редакция"; СПб.: Питер; 2008. - 992 стр.: ил. ISBN 978-5-7502-0085-6

  5. Станек Уильям Р. - Microsoft SQL Server 2005. Справочник администратора / Пер. с англ. - М.: Издательство "Русская редакция", 2008. - 544 с.: ил. ISBN 978-5-7502-0281-2

  6. Ховард М., Лебланк Д. - Защищенный код \ Пер. с англ. - 2-е изд., испр. - М.: Издательско-торговый дом "Русская Редакция", 2005. - 704 стр.: ил. ISBN 978-5-7502-0238-6
  7. Эспозито Д. - Знакомство с технологией Microsoft ASP.NET2.0 AJAX. - М.: "Русская Редакция"; Спб.: Питер, 2008. - 320 с.: ил. ISBN 978-5-7502-0307-9

  8. Эспозито Д. - Microsoft ASP.NET 2.0. Углубленное изучение / Пер. с англ. - М. : Издательство "Русская редакция"; Спб. : Питер, 2007. - 592 с.: ил. ISBN 978-5-7502-0286-7


Боекомплект разработчика

четверг, 4 декабря 2008 г.

ORA-12520: TNS:listener could not find available handler for requested type of server 

В Oracle 10XE параметр processes имеет значение 20. Что при большом количестве одновременных подключений к БД приводит к данной ошибке.
Решение:
ALTER SYSTEM SET PROCESSES = <количество процессов> SCOPE=SPFILE

После перезапуска базы параметр изменится.

Ключевые слова: ORA-12520, TNS-12520

вторник, 11 ноября 2008 г.

Играю Fallout 3

Постапокалиптический мир очень захватывает. В силу своей любопытстности больше скитатаюсь по пустоши, чем выполняю основную ветку сюжетной линии. Хотя квест от Мойры по написанию руководства старательно добиваю. Вчера ночером забрался к коллектор населенный дикими гулями, адреналинчику в крови заметно прибавилось, эти чудни бегают очень быстро, не убежишь, а темнота усиливает эффект неожиданности, но боевой дробовик заметно убавляет их прыть. С супермутантами в открытом поле стягаться тяжело, но при наличии гранат/мин/крышкомин и хоть какого то бугорка можно отбится от одиночки с миниганом, а в бетонных джунглях они выносятся отстрелом рук и головы из-за укрытия, после отстрела руки они либо прячуться либо бегут на встречку, где тем же дробовиком прибиваются к полу.

Так что Bethesda потрудилась на славу! Обзоры игры не читаю, и не буду!

А вот список тех кто озвучивал персонажей игры, я так и знал - DJ ТриДогНайта (ведущий радио "Новости Галактики") озвучивал Борис Репетур. К озвучке нареканий нет, а вот перевод местами хромает. Надо бы добавить музыки в стиле 50-60х на радио "Новости Галактики", а то старая уже приелась.

четверг, 6 ноября 2008 г.

Linux: Удалить файлы рекурсивно

Казалось бы, простая задачка. В Windows все просто - del /S smth.*, готово. Все файлы по маске smth.* в текущей директории и ниже будут удалены.

В Linux чуток сложнее.
Есть в Linux команда rm, но она дальше текущей директории не идет, зато прекрасно понимает полный путь к файлу, чем мы и воспользуемся.
Получить список всех файлов в текущей директории и поддиректориях по маске позволяет команда find -name "smth.*", ее вывод то нам и нужен. Осталось его перенаправить на вход команды rm. Это можно сделать 5ю способами:
xargs - формирует команду rm с аргументами считанными из стандартного ввода на которой мы подадим вывод команды find. нюансы использования описаны тут
1. find /path/to/dir -type f -name 'smth*' -print0 | xargs -0 rm;
exec - перенапаравляем вывод команды find на вход команды rm
2. find -name 'smth.*' -exec rm {} \;
UPD.
find - самый рульный способ
3. find -name 'smth.*' -delete;
UPD.
Способы подсказанные камрадом goodvin
4. find . -type f -name 'smth*' -delete
5. find . -type f -name 'smth' -exec rm -f -- "{}" \;

Может есть ещё какие нибудь способы??