Компания Adafruit, специализирующаяся на создании Open Hardware систем, представила (http://www.adafruit.com/blog/2012/10/05/the-adafruit-learnin.../) первую тестовую версию web-ориентированной среды разработки WebIDE (http://learn.adafruit.com/webide), специально созданной для использования на для одноплатном компьютере Raspberry Pi. Установив WebIDE на Raspberry Pi пользователь получает готовую интегрированную среду разработки, с которой можно работать через любой web-браузер. WebIDE поддерживает интеграцию с сервисом Bitbucket (http://bitbucket.org/), что позволяет напрямую редактировать проекты, размещённые в Bitbucket, и синхронизировать вносимые изменения.
Выполняемые на стороне клиента и сервера компоненты написаны на языке JavaScript и распространяются (https://github.com/adafruit/Adafruit-WebIDE) под лицензией AGPL. Серверная часть выполняется с использование node.js и БД Redis. Первая тестовая версия имеет ряд ограничений, например, поддерживается только редактирования кода на языке Python и возможность использования GitHub через клонирование репозтория в Bitbucket.
<center><a href="http://www.adafruit.com/adablog/wp-content/uploads/2012/10/W... src="http://www.opennet.me/opennews/pics_base/0_1349680991.jpg" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>URL: http://www.adafruit.com/blog/2012/10/05/the-adafruit-learnin.../
Новость: http://www.opennet.me/opennews/art.shtml?num=35025
Извращенцы
Согласен полностью. Одоплатный пк орентированный на минимальные расходы не должен быть инструментом разработчика.
А для чего по твоему существуют платы разработки?
Да и потом, одноплатный компьютер. Порно смотреть можно, а в текстовом редакторе сидеть уже нельзя?
Ну да, примерно так же рассуждали гиганты индустрии когда стали появляться первые ПК (тот же ZX Spectrum, Apple I/II и так далее) - кто будет разрабатывать софт ДОМА на собственном настольном ПК подключенном к телевизору с 4Кб озу да еще на бейсике в перемешку с машкодами? Разрабатывать софт может возникнуть желание/надобность исключительно на мейнфреймах используя серьезные ЯП вроде PL/I!Теперь по технике: если отвлечься от node.js, то вообще говоря архитектура web-server+отладчик на стороне платы + браузер на другой машине где уже крутится морда для IDE со всякими автокомплитами является более легковесной нежели запуск просто блокнота в иксах чтобы отредактировать какой-нибудь конфиг линуксячий.
16кб вообще-то. 8кб+8кб
48кб 16+32
И позже 128кб и выше
Вообще то нет:
"4 KB standard expandable to 8 KB or 48 KB using expansion cards"
http://en.wikipedia.org/wiki/Apple_IУ Apple-II изначально тоже было 4Кб ОЗУ. Естественно я для примера выбрал начальный минимум ОЗУ который был на первых ПК.
Еще наверно стоит вспомнить весьма популярный в те годы компьютер KIM-1: http://en.wikipedia.org/wiki/KIM-1 и там тоже 4Кб ОЗУ (можно было наращивать посредством паяльника).
+5 за работу с литературой
Представляю как бы ты удивился попади ты во времена БЗ-34/МК-52 и полистав "Науку и Жизнь"
> ИзвращенцыДа, теперь я понимаю как выглядит удаление гланд через попу автогеном в понимании программистов. Это вот как-то так, да :)
> возможность использования GitHub через клонирование репозтория в Bitbucket.Звучит как возможность почесать левой ногой правое ухо, если не опечатка.
Среда разработки, работающая в БРАУЗЕРЕ на ОДНОПЛАТНОМ КОМПЬЮТЕРЕ, в которой программируются датчик BMP085 и шина I2C на ПИТОНЕ. Мир сошел с ума! Оо
> Среда разработки, работающая в БРАУЗЕРЕ на ОДНОПЛАТНОМ КОМПЬЮТЕРЕ, в которой программируются
> датчик BMP085 и шина I2C на ПИТОНЕ. Мир сошел с ума!
> ОоСделать из ежевики свой загончик а-ля адруинчик и пасти на нём пользователей. Плодотворная дебютная -- и железо _делать не надо.
Да нет, пусть пасут пользователей, если у них получается. Мне просто интересно, какой идиот занимается низкоуровневым программированием на Питоне, причём делает это в браузере на одноплатном компьютере! Это ж п#*&%ц!
А почему нет?Кроме того, кто сказал что работа с датчиком через I2C обязательно должна быть низкоуровневой?
> А почему нет?Нет, ну можно и зубы через задний проход лечить, но ЗАЧЕМ?
> Кроме того, кто сказал что работа с датчиком через I2C обязательно должна быть низкоуровневой?
А какая же она ещё? Если там сишный/ассемблерный код, инкапсулированный в питоновский объект, то ещё полбеды. А если они прям на Питоне SCL/SDA дёргают?... Оо
С другой стороны, если это - очередная тупая питонопрограмма, единственная функция корой - показывать данные с какого-то датчика, не заботясь о производительности, то, может быть, так и можно жить. Но даже такое г***но нужно как-то отлаживать. Неужели они и это в браузере делают? Оо
> А какая же она ещё? Если там сишный/ассемблерный код, инкапсулированный в питоновский
> объект, то ещё полбеды. А если они прям на Питоне SCL/SDA дёргают?... ОоТам обычный биндинг к I2C-dev линуксячьему. В принципе, само использовение линукса для подобных целей это дикость (ибо дикий оверхед), по сравнению с которым использование I2C-dev на питоне и сях ничем не отличается. Ты посмотри на API I2C-dev ну и модуля питоновского smbus - это API ничем принципиально от API для работы с файлами (если туда ioctl добавить) не отличается. Записать байт, прочесть байт. В линуксе ни на сях ни на питоне никто низкоуровнево с I2C не работает. На нижнем уровне там работает драйвер/кусок ядра.
> С другой стороны, если это - очередная тупая питонопрограмма, единственная функция корой
> - показывать данные с какого-то датчика, не заботясь о производительности, то, может
> быть, так и можно жить. Но даже такое г***но нужно как-то отлаживать. Неужели они и это в
> браузере делают? ОоА что мешает отлаживать в браузере? Это ничем принципиально не отличается от удаленной отладки через gdb (например так отлаживаются те же айфончики/андроиды). В данном случае на плате запущено будет приложение одновременно с функцией веб-сервера и отладчика питонопроги, а браузер у тебя - всего лишь тонкий клиент к этому всему. Если уж на то пошло, то это не сильно отличается от работы через иксы, когда x-server и x-client на разных машинах.
> удаленной отладки через gdb (например так отлаживаются те же айфончики/андроиды). ВДля них (сюрприз!) симуляторы/эмуляторы есть.
Если это было сказано для iOS/Android-устройств, то спешу огорчить - эмуляторы практически бесполезны, особенно для iOS, ибо там не эмулятор а симулятор, у которого куча особенностей не совместимых с реальностью.Поэтому всегда когда возможно отлаживаемся на реальном устройстве. Собственно на эмуляторе отладка только в режиме нищеброда - когда устройство не доступно по той или иной причине. (после разработки под эмулятор, обычно код приходится частично переписывать)
>> удаленной отладки через gdb (например так отлаживаются те же айфончики/андроиды). В
> Для них (сюрприз!) симуляторы/эмуляторы есть.Да, забыл добавить - то что отлаживаешься скажем в эмуляторе для Android'a, никак не отменяет удаленную отладку через gdb - в эмуляторе запускается gdb-агент и он контачит с gdb на хосте точно также как если бы был не эмулятор а реальная железяка. Ведь эмулятор там - это полноценный qemu, виртуальная машина.
>пусть пасут пользователей
> какой идиот занимается низкоуровневымТщательно взрощенный-прокультивированный-разведённый же.
> Это ж п#*&%ц!
Или мы с тобой ничего в разводе кролликов не...
прочитай документацию, посмотри примеры, сам попробуй, в чем проблема? borland pascal 7.0 тоже менее требовательна к ресурсам, чем, например, delphi. однако, ни один блокнот с подсветкой не выдерживает конкуренции с eclipse, netbeans и т.д. при разработке коммерческого ПО с автоматизацией тестирования и сильно разветвленными репозиториями исхоников. если централизованное управление средой разработки, гибкий современный язык программирования, сверхнизкие требования к серверным ресурсам тебя отталкивают, - можно заниматься низкоуровневым программированием в виме на хепешном серваке на ассемблере или анси си, а называть людей идиотами первый признак недалекого ума.
а что вы прицепились к одноплатному компьютеру? Это тоже самое, что если бы раньше кричали "о боже, как они программируют на этом чемодане, извращенцы! Ведь есть большой шкаф!"
Между прочим, любой современный смартфон (да-да, в четырьмя 1.5 GHz ядрами, гигом-двумя ОЗУ) это как раз одноплатный компьютер.Более того, некоторые персоналки/ноутбуки (на x86, ага) - тоже одноплатки (но не SOC, хотя к тому все идет).
Так что не вижу, в принципе, никакого криманала. Ну, кроме того, что для этих задач (работа с барометрическим датчиком по I2C) вполне хватило бы какого-нибудь MSP430 с 128 БАЙТАМИ на борту (со стоимостью 1 бакс если покупать штучно) и без операционки вообще.
> Между прочим, любой современный смартфон (да-да, в четырьмя 1.5 GHz ядрами, гигом-двумя ОЗУ) это как раз одноплатный компьютер.Но, по-моему, ещё никто не додумался разрабатывать приложения для телефонов прямо на самих телефонах, тем более в работающих на них браузерах :)
> Так что не вижу, в принципе, никакого криманала. Ну, кроме того, что для этих задач (работа с барометрическим датчиком по I2C) вполне хватило бы какого-нибудь MSP430 с 128 БАЙТАМИ на борту (со стоимостью 1 бакс если покупать штучно) и без операционки вообще.
Вот-вот. Зачем забивать гвозди микроскопом...
> Но, по-моему, ещё никто не додумался разрабатывать приложения для телефонов прямо на
> самих телефонах, тем более в работающих на них браузерах :)Ну, почему же, вполне додумались. Ставиш туда gcc и вперед, с песнями :-) Помнится мы под какой-то *nix'овый телефон свой сервер на нем же собрали (не помню, то ли это был iPhone, то ли андроид). И ничего, собралось и потом еще работало там. :-)
Современный телефон сильно мощнее чем десктоп семи-десяти летней давности, так что не вижу особых причин паниковать.
> :-) Помнится мы под какой-то *nix'овый телефон свой сервер на нем же собралиНа n900 в свое время кто-то написал HTTP сервер на баш-скрипте + неткате. Который можно скопипастить и вот у вас уже типа вебсервак. Хреновый, но чтобы передать 1-2 файла когда приспичило - и так сойдет. Для более серьезных применений там nginx кто-то собрал :)
> Ну, почему же, вполне додумались. Ставиш туда gcc и вперед,У меня на n900 даже стоит в порядке научного курьеза :)
> Но, по-моему, ещё никто не додумался разрабатывать приложения для телефонов прямо на самих телефонах, тем более в работающих на них браузерах :)
> Но, по-моему, ещё никто не додумался разрабатывать приложения для телефонов прямо на самих телефонах, тем более в работающих на них браузерах :)и для ruby
https://play.google.com/store/apps/details?id=org.ruboto.irb...
>Ну, кроме того, что для этих задач (работа с барометрическим датчиком по I2C) вполне хватило бы какого-нибудь MSP430 с 128 БАЙТАМИ на борту (со стоимостью 1 бакс если покупать штучно) и без операционки вообще.Да, вот только, показания датчика надо ещё куда-то передавать. Поэтому если у расбери есть i2c, то почему бы и не использовать его.
А питон, ну и что, для домашник поделок сойдёт. А вот IDE в браузере - странная фигня.
С этим тоже проблем нет. Можно хоть по WiFi передать, хоть в память записать, хоть по http страничку отдать с гламурным графиком изменения того же давления.И при этом это все будет неплохо жить от батарейки автономно долгое время. В отличае от.
> И при этом это все будет неплохо жить от батарейки автономно долгое время. В отличае от.Справедливости ради, на MSP430 обычно делают девайсы которые годами работают от 1 литиевой таблетки. Распберри так не сможет. С другой стороны, 430 как-то поднапряжется отгружать веб-страничку то. Сложно сравнивать самокат и вертолет, хоть они оба и транспортные средства...
Нет, не напряжется.Дело в том, что для того что-бы что-то отдавать по, например, WiFi, нужен, как понимаешь, WiFi-модуль (например от вот этих ребят: http://www.rovingnetworks.com/ ), который имеет забавную фичу - весь tcp/ip стек крутится сразу на нем, а общаешься ты с ним (со своего MSP430) просто либо по rs232, либо по I2C/SPI тому же. Следовательно в самом худшем случае на долю MSP430 остается реализация примитивного веб-сервера отдающего простую статику + примитивнейший ajax, что не просто, а очень просто. Затрат ОЗУ это в общем то не требует (страничка лежит во флеше, её даже в ОЗУ для отдачи грузить не нужно). А в лучшем случае - http умеет уже сам WiFi-модуль.
О, этак на msp430 можно задачи геофизики решать, просто подключите его по rs232 к кластеру из TOP500 =)
И что он там будет делать? И какой с этого профит?Профит с описанной мною конфигурации очевиден - во-первых это дешево, во-вторых это очень просто, в-третьих это безглючно и долговечно (там не чему деградировать со временем, операций записи не производтся в принципе) ну и наконец это энергоэффективно а также весьма компактно (все в сборе вполне может поместиться в спичечный коробок. то есть с батарейкой вместе).
Но конечно, я бы лучше выдавал информацию не по WiFi, а по BLE (bluetooth low energy), в этом случае энергоэффективность возрасла бы на порядок или два. Да и размеры бы стали меньше. Это если мы про метеостанцию говорим.
> И что он там будет делать? И какой с этого профит?Это он видимо так потроллил, намекая что у вай-фай модуля проц потребный для реализации стека протоколов - в разы мощнее этого самого MSP430 :)
P.S. кстати на проце с 128 байтами памяти вы за...сь как минимум нормальный TCP/IP делать. Дело в том что при этом нет памяти на буфер кадра эзернета. А вот это уже хорошая заявка на геморрой.
> на нем, а общаешься ты с ним (со своего MSP430) просто
> либо по rs232, либо по I2C/SPI тому же.Понимаешь ли дядя, wi-fi и все семейство TCP/IP достаточно навороченное. Я в курсе таких модулей, но...
1) Такой модуль обычно стоит как все raspberry pi зачастую.
2) В таком модуле более мощный процессор, которого не напрягает реализовывать TCP/IP и вафлю, так что стоящий рядом задохлик с 128байтов рамы выглядит на редкость по идиотски: хвост виляет собакой :)
3) Такое решение имеет туеву хучу ограничений. А как насчет IPv6? А что если пров через PPTP/L2TP VPN работает, как горбина какая-нибудь? А через прокси поработать - можно? В пингвине пачка протоколов полноценная, все мало-мальски популярные - сто лет как реализованы. А вот в этих обкоцаных недомерках...
4) Смысл в MSP430 при наличии вайфая стремится к нулю. Ибо вайфай - жрет. By design он такой, он не делался под экстремально low-powered применения. Литиевой таблеткой там уже не отделаешься. Ну и смысл в суперэкономном MSP430 когда там вайфай жрать будет?
5) На линуксный девайс можно поставить обычный httpd и оным тянуть странички из файловой системы. А вот на мелком девайсе размещение странички будет уже не самой простой и довольно нетривиальной операцией. В принципе такое бывает но это что-то из разряда попыток заставить воробьев таскать слона.
> для этих задач (работа с барометрическим датчиком по I2C) вполне хватило
> бы какого-нибудь MSP430 с 128 БАЙТАМИ на бортуА теперь расширяем задачу: а попробуйте показать текущую погоду за бортом не на угребищном черно-зеленом экране и локально, а в вебстраничке. Ну чтобы я мог ремотно с любого девайса посмотреть. Ну как, сделаете на MSP430? :)
Да легко ( http://www.opennet.me/opennews/art.shtml?num=35025#16 ). Тебе через WiFi, Lan или Bluetooth?А вот показывать текущую погоду на угребищном черно-зеленом экране - задача как раз сложнее (ну или как минимум не проще) чем выдача веб-странички.
> Да легкоАга. Подключитесь по эзернуту к прову с PPPoE? А что насчет L2TP? А вайфай у вас будет поддерживать все режимы? И ad-hoc, и infrastructure? И вы даже не замахаетесь сделать настройку вариантов шифрования и ключа с каким-то более-менее реалистичным вариантом настройки всего этого?
> Ну как, сделаете на
> MSP430? :)Сделает! Другое дело нафиг все эти заморочки с отдельными модулями WiFi для домашней поделки.
>> Ну как, сделаете на
>> MSP430? :)
> Сделает! Другое дело нафиг все эти заморочки с отдельными модулями WiFi для
> домашней поделки.У TI, кроме 430-го, много чего есть. Посмотрите на WL1271 - легко сопрягаемый с TI-ным же процессором (ARM,OMAP) модуль с WiFi b/g/n + BlueTooth 2.1 + стек в одном флаконе
> У TI, кроме 430-го, много чего есть.У TI дохрена всего есть, от мелочевки до процессоров приложений. Но для единичной конструкции где нет каких-то специальных требований к параметрам, взять штуку типа raspberry pi и воткнуть в нее usb-свисток - дешево и сердито.
Кстати готовые wi-fi модули со своим стеком - стоят каких-то конских бабок. Являясь уникальным пепелацем да еще с кучей оговорок и ограничений. Вот научились вы его программить. Потратили времени и сил. А тут производитель бах и снял с производства оный. Ну и все, знания псу под хвост.
> легко сопрягаемый с TI-ным же процессором (ARM,OMAP) модуль с WiFi b/g/n + BlueTooth 2.1
> + стек в одном флаконеВот только одно дело если типовой драйвер пингвина подхватит первый попавшийся свисток на типовом чипсете, и несколько другое - если придется самому по сути аналог такого модуля разрабатывать + поддержку оного писать.
А то так можно дойти и до того что предложить взять OMAP и самому под него плату развести. Чисто теоретически ничему не противоречит. Чисто практически, плату под плотный BGA делать основательно задолбаешься, да и дороже получится. По поводу чего проще взять готовое если нет каких-то крутых спецтребований. Это, кстати, просекла толпа фирм, которые стали нынче паять модули-"полуфабрикаты", например под SODIMM разъем, так что тяжелую работу делают они а sodimm уже может паяться на относительно low-tech плату клиента. Ну а тут сия концепция чуть более доразвита: готова сразу вся плата :)
> датчик BMP085 и шина I2C на ПИТОНЕ. Мир сошел с ума!Ну, помнишь в досовые времена народ писал крЮтые программы на бэйсике? Особо упорные извращенцы умудрялись чуть ли не с портами ввода-вывода работать оттуда. Правда большинство постепенно осознало что на си это намного мене мучительно и результат явно лучше :). Но все повторяется по спирали...
А школоте и студентам надо что то больше?
Задумка супер, очень полезно и вообще круто!!! Вот если б и другие языки добавили, вот как только автокомплит они собрались пилить.
Люди! Может есть уже нормальный нетбук/ноутбук на ARM? Хочу такое чудо, чтоб легкий был, долго заряд держал, с клавой максимально приближенной к полноразмерной и без винды в комплекте. Ну и подешевле, естественно. Кроме Тошибы AC100 ничего подобного не нашел (не считая дешевых некачественных китайцев). Неужели еще никто не выпускает такого?
> еще никто не выпускает такого?Просто народ придумал вариант: планшет + чехол с usb клавиатурой = маленький и легкий вариант нотика :). Правда вот ведроид как десктоп suxx. А с установкой полноценных линуксов не все так просто.
> Правда вот ведроид как десктоп suxx.Ага, для вантузятников точно. Для них все что не вантуз - все сакс.
> Ага, для вантузятников точно. Для них все что не вантуз - все сакс.Как линуксоида меня знаете ли тоже не вдохновляют ява-программы от школьников с нежелательный функционалом (aka spyware). При убогости функционала. Да еще и за бабки как правило.
Софт в репах нормальных линуксов мало того что бесплатный, открытый, так еще и куда функциональнее и без троянов в комплекте. Майнтайнеры в отличие от гугли всякий (полу)троянский буллшит и прочее адваре у себя в репах терпеть не намерены.
Так это зависит от задач. Если по минимуму - в ту же клаву, "приближенную к полноразмерной", можно ту же "малинку" впихать вместе с комплектом батареек. Промышленно, правда, так еще никто не делает, но самодельщиков, сварганивших такое почти с любым TFT-экраном - масса. И раз уже сервера на АРМах есть, ноуты тоже будут. Ждем только серийного выпуска многоядерных АРМов :)
> Если по минимуму - в ту же клаву, "приближенную к полноразмерной", можно ту же "малинку"впихать вместе с комплектом батареек.
Проще наоборот в приближенную к полноразмерной клавиатуру вставить "малинку". А ещё проще воспользоваться USB разъемом и гибкой клавиатурой. В худшем случае воспользоваться старым мобильным телефоном, там клавиатура, монитор, проц и батарейка объединены производителем в одном корпусе изначально, радиомодуль прилагается в качестве бонуса.