Pull to refresh

Инженер сыграл в Doom на миниатюрном мониторе из детальки Lego

Reading time 1 min
Views 6.1K
DIY Games and game consoles

Инженер Джеймс Браун (James Brown) из Новой Зеландии показал свой проект миниатюрного монитора из детальки Lego. Автор поиграл на самоделке в Doom, правда, саму игру запустил на другом устройстве, а компактный монитор использовал только для вывода изображения.

Читать далее
Total votes 4: ↑2 and ↓2 0
Comments 2

Lego выпустила конструктор в виде консоли Atari 2600 в честь пятидесятилетия легендарной компании

Reading time 2 min
Views 4.7K
Gadgets History of IT Games and game consoles IT-companies


Производитель конструкторов для детей и взрослых Lego выпустил в оригинальном размере сборку в виде консоли Atari 2600 в честь пятидесятилетия легендарной компании.
Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 3

Lego выпустила набор «Моторизованный маяк» с работающей линзой

Reading time 1 min
Views 3.8K
Physics Games and game consoles

Lego представила новый набор из серии Ideas под названием «Моторизованный маяк». Он включает 2065 деталей, а также работающую линзу Френеля. 

Читать далее
Total votes 15: ↑13 and ↓2 +11
Comments 7

Инженер модернизировал мини-ПК из детальки Lego

Reading time 2 min
Views 4.5K
DIY Games and game consoles

Инженер Джеймс Браун из Новой Зеландии в июне продемонстрировал проект миниатюрного монитора из детальки Lego. Он сыграл на нём в Doom, использовав компактный монитор для вывода изображения. Теперь энтузиаст поделился деталями обновлённого проекта.

Читать далее
Total votes 7: ↑7 and ↓0 +7
Comments 3

MelGeek собрала $690 тысяч на Kickstarter на производство клавиатуры из Lego

Reading time 1 min
Views 1.1K
Crowdsourcing Finance in IT Periphery

Компания MelGeek в конце октября открыла на Kickstarter сбор средств на производство механической клавиатуры Pixel, которая состоит из пластмассовых «кирпичиков» Lego. Она уже собрала $690 тысяч.

Читать далее
Total votes 5: ↑4 and ↓1 +3
Comments 0

Конструктор социальных сетей Ning официально открылся

Reading time 2 min
Views 1.7K
Lumber room
Марк Андрессен, благодаря своему бэкграунду, стабильно находится в центре внимания экспертов, журналистов и венчурных финансистов в Кремниевой долине. Еще бы, ведь это тот самый Андрессен, сооснователь легендарной компании Netscape, которая вышла на биржу в 1995 году и своим феноменальным успехом предвосхитила наступающий бум доткомов.
Читать дальше →
Total votes 38: ↑35 and ↓3 +32
Comments 19

Yahoo выпустила конструктор метапоисковиков

Reading time 1 min
Views 900
Search engines *
Конструктор Yahoo! Alpha работает через интуитивный интерфейс: создать свой метапоисковик можно в несколько щелчков мышкой, перетаскивая виджеты на экране. Пока выпущена только бета-версия Yahoo! Alpha, но она выглядит очень многообещающе.


Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Comments 6

Системник из конструктора

Reading time 1 min
Views 579
Desktop PC's
Системный блок из конструктора
Этот мегапроект я замутил благодаря апгрейду основной машинки, после чего у меня высвободилась мать и кучка комплектующих.
Вспомнив свое детство и достав из закромов конструктор я начал свое черное дело…
Смотреть еще фотки
Total votes 118: ↑98 and ↓20 +78
Comments 78

UserAPI — Конструктор Социальных сетей на базе ВКонтакте

Reading time 2 min
Views 71K
Social networks and communities
Павел Дуров заявил об открытии нового проекта: User API.

Сервис предназначен для быстрого построения соцсети (заявленное минимальное время — 5 мин.)
Новые сети будут использовать данные сети ВКонтакте (пользователи, фото, etc.).

При монетизации проекта: доходы будут делиться на 60% хозяину, 40% User API. Подробнее в уловиях пользования User API.

Документация проекта.

Для тех кто не зарегестрирован ВКонтакте копипаста из блога Дурова:
Читать дальше →
Total votes 83: ↑74 and ↓9 +65
Comments 153

Покорим Ruby вместе! Капля десятая

Reading time 6 min
Views 11K
Programming *
В этой капле мы еще раз углубимся ООП, выясняя новые методики работы с классами, объектами, модулями, которые обязательно пригодятся нам в серьезном программировании.

Множественные конструкторы


Что если мы хотим иметь несколько конструкторов для объекта? Ничто не мешает нам создать дополнительные методы класса, которые возвращают новые объекты. В следующем примере мы описываем котов, имеющих пять параметров: вес, высота, и три на окрас. Мы создадим дополнительные методы, которые определят некоторые типы котов “по умолчанию” (например, черный кот или толстый кот):

Дальше еще больше о котах
Total votes 36: ↑26 and ↓10 +16
Comments 21

Порядок инициализации в конструкторах

Reading time 2 min
Views 50K
C++ *
Итак, вот небольшая программа на C++:

#include <iostream>

class A {
private:
  int a;
  int b;
public:
  A(int x) : b(x), a(b) {}
  void dump() {
    std::cout << "a=" << a << " b=" << b << std::endl;
  }
};

int main() {
  A a(42);
  a.dump();
  return 0;
}

Если вы считаете, что она выдаст

a=42 b=42

То вас ждёт сюрприз
Total votes 79: ↑70 and ↓9 +61
Comments 74

Безопасные конструкторы

Reading time 4 min
Views 22K
C++ *
Недавняя статья о порядке инициализации членов класса вызвала весьма любопытную дискуссию, в которой, среди прочих, обсуждался вопрос, как правильно оформлять члены класса, хранить ли их по значению и организовывать конструктор так:

A::A(int x) : b(x) {}

Или хранить их по ссылке:

A::A(int x) { b = new B(x); }

Существует множество «за» и «против» для каждого из подходов, но в этой заметке мне бы хотелось сосредоточиться на вопросах обработки исключений.

Читать дальше →
Total votes 46: ↑42 and ↓4 +38
Comments 58

Транзистор из человеческих ДНК

Reading time 2 min
Views 3.1K
Computer hardware
Пару лет назад американский биолог Пол Ротмунд обнаружил, что молекулы ДНК обладают способностью к самосборке в различные правильные геометрические формы — треугольники, квадраты, звёздочки и т.д. (работа Ротмунда в PDF). Это действительно интересное открытие (оно вошло в список 12 самых важных научных открытий 2006 года) теоретически позволяет сделать из нашего ДНК нечто вроде конструктора «Лего».



Практическая реализация такой возможности не заставила себя долго ждать.
Читать дальше →
Total votes 65: ↑61 and ↓4 +57
Comments 39

Сети. Такие разные конструкторы

Reading time 3 min
Views 3.1K
Social networks and communities
Немного больше недели назад на Хабре вышла статья про социальные конструкторы , но в ней почему-то было рассказано только про два из них- Taba и Ning. Почему-то казалось, что таких конструкторов больше, чем два=) А ведь можно еще брать и социальные сети, которые могут выполнять функцию конструктора – тогда их будет гораздо больше, чем два. Проведя некоторое количество времени и вспомнив социальные сети, которые когда-либо видела, получается интересная картина. Все социальные площадки, с помощью которых можно объединить людей вокруг какой-той темы, сделать свое сообщество или группу, в общем, можно условно разделить на три основных блока: 1) потребительские сети 2) корпоративные сети и 3) сети для бизнеса.

Читать дальше →
Total votes 31: ↑24 and ↓7 +17
Comments 44

Электронный конструктор (ЭКОН-02 vs Знаток)

Reading time 2 min
Views 26K
Old hardware
Как то разговорились с коллегой по работе об электронных конструкторах, оказалось у него дома на полках пылится Экон-02. В моем детстве такого счастья не было и я очень захотел, чтобы у моего сына был какой то аналог Экон-02.
электронный конструктор Экон-02
Читать дальше →
Total votes 64: ↑58 and ↓6 +52
Comments 67

Апрельские азбучные истины в «Smashing Magazine»

Reading time 1 min
Views 866
Website development *
Вот и подходит к концу весенний месяц апрель. За этот месяц в «Smashing Magazine» появились две небезынтересные статьи, полные истин более или менее азбучных. И так как иногда хочется перечитывать и азы, чтобы не упустить из вида и сознания ничего существенного, то я вам эти статьи порекомендую.

«Seven JavaScript Things I Wish I Knew Much Earlier In My Career» — статья о том, как сочинять код джаваскриптов, чтобы как можно менее утруждать себя. Вместо конструкторов Object() и Array() использовать краткую запись, вместо условий записывать тернарный оператор «a? b: c», по возможности пользоваться встроенной сортировкою и обработкою вместо своей самописной, применять JSON и делегировать события, и так далее. Всё это — с примерами кода.

«Maps In Modern Web Design: Showcase and Examples» — статья об употреблении географических карт на сайтах. Никакого кода, зато масса красивых иллюстраций картографического и геоинформационного характера с подтекстом: делайте так, и сайт ваш будет красив и удобен.
Вы видели когда-нибудь, как выглядит карта покрытия 2G на сайте «Билайна» в Краснодарском крае и Адыгее? Уверен: если бы создатели этого сайта читали «Smashing Magazine», то у них бы получилось чуточку лучше. (Я уж не говорю про их же страницу сети 3G, где вообще нельзя ничего понять о покрытии.)
Total votes 10: ↑6 and ↓4 +2
Comments 2

Создание объектов в Javascript

Reading time 5 min
Views 67K
JavaScript *
Sandbox
Гибкость Javascript позволяет создавать объекты множеством способов. Но как это нередко случается, разнообразие таит в себе множество подводных камней. Из этой статьи Вы узнаете о том, как разглядеть и обогнуть эти опасные рифы.
Читать дальше →
Total votes 133: ↑119 and ↓14 +105
Comments 68

ProtoSnap — интересный «конструктор» для начинающего электронщика

Reading time 1 min
Views 6.1K
Gadgets


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

Читать дальше →
Total votes 46: ↑42 and ↓4 +38
Comments 101

Самовызывающийся конструктор Джона Резига и размышление о том, почему это решение не прижилось

Reading time 7 min
Views 12K
JavaScript *
Tutorial
Настала пора мысленно вернуться на четыре с небольшим года назад ко блогозаписи «Simple “Class” Instantiation» из блога Джона Резига, прославленного создателя необыкновенно удобной библиотеки jQuery. И вернёмся.

Однако же, так как я вовсе не вижу её в результатах поиска на Хабрахабре по слову «Resig», то поневоле приходится думать, что эту полезную блогозапись никто не удосужился перевести (или хотя бы пересказать) за четыре прошедших года — мне придётся, стало быть, самостоятельно пересказать блогозапись Резига прежде, чем я исполню моё главное намерение: поразмыслить вслух, почему же предложенный Резигом способ решения указанной им проблемы так и не сделался общераспространённым. И перескажу. (Сам этот пересказ ужé был бы полезен читателю, даже кабы я к нему ничего от себя не прибавил. А я прибавлю.)



Шестого декабря 2007 года Резиг рассмотрел, что получается, когда в джаваскрипте используется операция «new» для создания объекта (в языках с классами мы сказали бы «экземпляра класса»):

function User(first, last){
   this.name = first + " " + last;
}

var user = new User("John", "Resig");

Резиг справедливо подметил, что для начинающих программистов на джаваскрипте не вполне очевидно, что появление «this» в коде функции указывает на то, что перед нами конструктор объекта. (Я от себя в скобках прибавлю: если функция находится в недрах некоторой библиотеки, то это обстоятельство нуждается также и в документировании — а не то пользователь библиотеки не многим будет отличаться от новичка: исходный код с телом функции читают не все, тем более что он нередко применяется в минифицированном, не читаемом виде.)

Поэтому, рассудил Резиг, рано или поздно кто-нибудь попробует вызвать «User()» без «new» и тем получит на свою голову сразу две неприятные проблемы. Во-первых, переменная «user» останется неопределённою: функция «User()» задумана ведь как конструктор, а значения она никакого не возвращает. Во-вторых, что ещё хуже, попытки обращения к «this» изнутри такого (некорректно вызванного) конструктора неизбежно приведёт к засорению глобального пространства имён — а это чревато зловещими и трудноуловимыми последствиями. Обе проблемы Джон Резиг продемонстрировал на примере:

var name = "Resig";
var user = User("John", name);
// здесь переменная «user» не определена
// БОЛЕЕ ТОГО: значение «name» теперь ужé не «Resig»!
if ( name == "John Resig" ) {
   // фигассе!…
}

Читать дальше →
Total votes 78: ↑67 and ↓11 +56
Comments 50