コード品質向上のいろは - 先達に学ぶ実践例 Lunch LT https://findy.connpass.com/event/300912/
![「コードがむずかしい」からの脱却](https://cdn-ak-scissors.b.st-hatena.com/image/square/d9a3520bf9f06f4864833245a20d10748584e8b2/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F9bb2542b3b5244e18b56237e4693c38a%2Fslide_0.jpg%3F27915013)
伊藤兎さんから昨日の日記(http://d.hatena.ne.jp/torazuka/20110816/cpp)にコメント頂いたのをきっかけに、リリースビルドとデバッグビルドを自分が理解していないことに気づいたので、調べました。そのメモです。 C/C++ ビルドのリファレンス http://msdn.microsoft.com/ja-jp/library/91621w01.aspx そもそも、「PDB(プログラムデータベース)ファイルを生成するのがデバッグビルドである」という誤解をしていました。 リリースビルドでもデバッグ情報を生成できる デバッグ情報は、PDBでなくオブジェクトファイルに埋め込むこともできる ということを知りました。 リリースビルドとデバッグビルドの操作上の違い リリースビルドを作成する http://msdn.microsoft.com/ja-jp/library/3
MITら、ロボットに家事などの日常的なタスクを学習させる3Dシミュレータ「VirtualHome」発表 2018-06-02 MIT(マサチューセッツ工科大学)、トロント大学、マギル大学、リュブリャナ大学の研究者らは、ロボットに家事などの日常的なタスク含め多様なタスクを学習させるための訓練用3Dシミュレータ「VirtualHome」を発表しました。 論文:VirtualHome: Simulating Household Activities via Programs 著者:Xavier Puig, Kevin Ra, Marko Boben, Jiaman Li, Tingwu Wang,Sanja Fidler, Antonio Torralba 本稿は、エージェントに特定のタスクに到達するための必要な一連のアクションを学習させるシステムを提案します。 ロボットは、人間と違って1を言え
はじめに 「研究用のプログラムにもテストコードやドキュメント書いたほうがいいよね。」 「分かっちゃいるけど、そんな面倒なことやってられないよ。」 という研究者あるあるを解決すべく、僕が普段実践している開発スタイルを紹介します。 この開発スタイルのすごいところは: テストやドキュメントを一切書かない場合と比べて 追加の工数がほぼゼロ。 普通にコーディングしているだけで、いつのまにかテストコードとドキュメントまでできあがっている。 実装、コメント、テスト、ドキュメントが自然に同期するので、保守しやすい。 Pythonを例に紹介しますが、コメント内にテストを書けるツールと、コメントからドキュメントを生成できるツールをもつ言語ならばどれにでも応用できるはずです。 この開発スタイルに至った背景 ソフトウェア開発において、テストコードやドキュメントを整備することでプログラムの品質が向上することは広く知
#ドローンを自作するには #ラズベリーパイとドローンをつなげる #Node.jsでドローンを操作 #セルラードローン ・・・など、ドローンについて徹底探究 menu TelloのメーカーであるRyze Techは ホームページでPython用のSDKを公開しています。 詳細は、メーカーホームページからドキュメントをダウンロードできます。 https://www.ryzerobotics.com/tello/downloads で、ドキュメントを眺めてみたんですが、 基本的な離陸、着陸、上下左右、回転、前進後退などの他に、 フリップも可能なようです。 しかし、残念ながらフロントカメラの映像の取得方法についての記述はどこにもありません。 これだけだと、応用効かないですよね。 やはり、フロントカメラの映像をプログラムから取得し、OpenCVに渡して 顔の検出、オブジェクトトラッキング、ハンドジェ
Telloへのコマンド送信には、UDPのポート8889を使用します。今回使用するコマンドは、command、takeoff、landの3つです。 ドキュメントでレスポンスが OK / FALSE となっていても、実際には ERROR や error が返されることがあります。 サンプルプログラム 今回作成したプログラムは以下の通りです。GitHubでMITライセンスで公開しています。 #!/usr/bin/python3 # -*- coding: utf-8 -*- import threading import socket import time import sys from PyQt5.QtWidgets import * class TelloController1(QWidget): def __init__(self): QWidget.__init__(self) sel
※2017年12月23日時点 ドローンは機体の普及がこれからなので、爆発的に伸びると予想されている来年に以降に期待ですね。 ドローンプログラミングのはじめ方 レベル1:オススメ書籍を読む トコトンやさしいドローンの本 (今日からモノ知りシリーズ) 入門書ですが、ドローンに関する基礎知識がわかりやく書いてあるのでオススメです。 ドローンビジネス参入ガイド ドローンのビジネス市場について、現在〜これからが詳しくまとめられています。 ブイキューブロボティクスのDRONEBOXも掲載されてます♪ レベル2:ドローンに触れてみる。飛ばしてみる。 2017年版 ドローン講師が選ぶAmazonで買える一万円程度の最強ドローン3選【おすすめドローン】 わたしは、DRONE STAR 01で遊びました。 ジャイロが効いているので、ちっちゃいけど飛ばしやすかったです。 まだプログラミングができないので、個人用
パラメータを決める 次に関数に渡すパラメータを決めます。 関数の名前で表現されている処理を実現するには、どれだけのパラメータがあればよいか? と考えてみましょう。 今回の例でいえば「お客さんの年齢」と「日付」があれば、すべてのチケット価格が計算できます。 ということで、age と date の2つのパラメータを渡すことにします。 function calculateTicketPrice (age, date) { } パラメータの名前も、なにを表しているかわかるようにしてくださいね。 くれぐれも「hensu」とか適当な名前をつけたり、同じ変数にぜんぜん違う値を繰り返し代入したりすることのないようにしましょう。 テストを書く 次にユニットテストを書きましょう。 テストは常に更新される仕様書です。 業務ロジックをテストに説明させておけば、関数の仕様をコメントにいちいち書く必要などありません。
Abstract 計算機科学研究での記録のとり方 を書いてから半年ほど過ぎて、さらに知見がたまったので書き直します。情報系研究者が、紙ベース以外で研究ノートを取る場合に何をすれば良いか とにかく効率よく研究するにはどうするか をいくつかまとめました。改善案があればコメント希望、自分も研究効率をあげたいので教えてほしいですね。半年ぐらい経ったらたぶんまた書き直すと思います。 Introduction 本記事は、締め切りの明確に定まっている文章(上位国際学会論文、国際学会論文のrebuttal(反論)データ、学位論文)のための実験を円滑柔軟に行う上での効果的なノウハウを提案する。この内容は、筆者のいる研究室でのゼミ内容を幾分反映してはいるが、それだけにはとどまらない。内容はいくつかの段階に分けられる。 実装段階での工夫 実験デザイン段階の工夫 実験実行段階での工夫 Preliminaries
コメント欄で「Software Design 誌 (2018/12) に寄稿した内容や修正などをこちらの記事にも適用したい」と言ったあと、やるやる詐欺でずっと放置していましたが、三年近く経ってようやく 2021年 7月に大幅に改訂し、同時に Zenn に引っ越すことにしました。 タイムゾーン呪いの書 (知識編) タイムゾーン呪いの書 (実装編) タイムゾーン呪いの書 (Java 編) なにやら長くなりすぎたので三部構成になっています。 この Qiita 版は、しばらく (最低一年は) 改訂前のまま残しておきます。 タイムゾーンの存在はほぼ全ての人が知っていると思います。ソフトウェア・エンジニアなら多くの方が、自分の得意な言語で、タイムゾーンが関わるなにかしらのコードを書いたことがあるでしょう。ですが、日本に住んで日本の仕事をしていると国内時差もなく1 夏時間もない2 日本標準時 (Japa
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く