Skip to content

Instantly share code, notes, and snippets.

国内大手システム開発会社に入社後、本業をこなしつつ舞台での身体表現や映像との融合などの実験演劇に傾倒する。シカゴ、フランス、ニューヨークなどで招聘公演を実施後、1999年以降は舞台を離れ、技術系専門誌にてWindows系システム開発の技術情報を執筆。主な著作として『はじめてのVisual Basic 2012』、『はじめてのVisual C# 2012』、Kinectに関する洋書の翻訳監修がある。 また、Leap Motion SDKドキュメントの日本語翻訳(非公式)なども自サイトにて公開している。

また、Microsoftが優秀な技術者に授与するMicrosoft Most Valuable Professional (MVP)、同様にOracleが優秀な技術者に授与するOracle ACEを共に2008年から受賞。2013年に開催されたMicrosoft MVPの世界的な会議「グローバルサミット 2013 Nov」では、プレゼンしたアプリが圧倒的得票率で最優秀賞を受賞するなど、活躍の場を国内から海外へも広げつつある。

http://blogs.wankuma.com/hatsune/

@hatsune_

@hatsunea
hatsunea / KinectModel.cs
Last active August 29, 2015 14:22
Kinect Camp
using System;
using System.ComponentModel;
using System.Runtime.CompilerServices;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Media.Imaging;
using WindowsPreview.Kinect;
namespace HandsOn.Models
{
public class KinectModel : INotifyPropertyChanged
@hatsunea
hatsunea / LeapModel.cs
Last active August 29, 2015 14:22
LeapCamp
using Leap;
using System;
using System.ComponentModel;
using System.Runtime.CompilerServices;
using System.Windows;
namespace HandsOn.Models
{
public class TItem
{
using System;
using System.IO.Ports;
using Microsoft.SPOT.Hardware;
namespace Gr.NETMF.Hardware.Peach
{
internal class GR_PEACHHardwareProvider : HardwareProvider
{
static GR_PEACHHardwareProvider()
{
#include <SoftwareSerial.h>
SoftwareSerial ESP8266_Serial(2, 3);
Servo CameraServo;
Servo WaterServo;
long LastTime = 0;
boolean WROOM_boot = false;//WROOMが起動したかどうかの判定
boolean WiFi_setup = false;//WIFIセットアップが済んだかどうかの判定
NetworkChange.NetworkAddressChanged += (object sender, EventArgs e) =>
{
this.Context.Post(async (o) =>
{
this.IsEnable = await CheckEnable();
},
null);
};
NetworkInformation.NetworkStatusChanged += async (object sender) =>
{
this.Context.Post(async (o) =>
{
this.IsWCFEnable = await CheckWCFEnable();
},
null);
};
<Style x:Key="NavRadioButtonStyle" TargetType="RadioButton">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Padding" Value="3"/>
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="HorizontalContentAlignment" Value="Left"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
@hatsunea
hatsunea / MainActivity.cs
Created August 15, 2016 02:46
Xamarin.Forms (Android) でスリープ状態にさせないためには
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
LoadApplication(new App());
// スクリーンオフやロックスクリーン回避
Window.AddFlags(Android.Views.WindowManagerFlags.KeepScreenOn |
@hatsunea
hatsunea / GetAzureDataMarketToken.cs
Created December 12, 2016 14:33
Azure API認証
/// <summary>
/// OAuth認証を実行する
/// </summary>
/// <returns></returns>
private async Task<string> GetAzureDataMarketToken()
{
var properties = new Dictionary<string, string>
{
{ "grant_type", "client_credentials" },
{ "client_id", _clientId},