kmizuの日記

プログラミングや形式言語に関係のあることを書いたり書かなかったり。

Sonatype Nexus repositoryにライブラリをアップロードしようとしてはまった話

昨日、Scala 2.11.0がリリースされたということで、自分(たち)がメンテしているライブラリnscala-timeScala 2.11.0対応版をSonatype Nexus Repository(これ、正式名称は何なのだろうか未だに悩んでいる)にアップロードしようとしていたのだが、

こんな画像

な感じで何故か301が返ってきてはまっていた。

原因はわかってみると簡単。どうも、いつのまにかSonatypeがhttps://で始まるURLしか受け付けないようになっていたのに、アップロード先のURLがhttp://のままなのであった。

修正は簡単で、

publishTo <<= version { v =>
  val nexus = "http://oss.sonatype.org/"
  if (v.endsWith("-SNAPSHOT"))
    Some("snapshots" at nexus + "content/repositories/snapshots")
  else
    Some("releases" at nexus + "service/local/staging/deploy/maven2")
}

となっていたのを

publishTo <<= version { v =>
  val nexus = "https://oss.sonatype.org/"
  if (v.endsWith("-SNAPSHOT"))
    Some("snapshots" at nexus + "content/repositories/snapshots")
  else
    Some("releases" at nexus + "service/local/staging/deploy/maven2")
}

にするだけ。

名前を簡単に変えられることのありがたさ

何を当たり前のことを、と言われそうだが、最近の静的型付き言語のIDEには、「名前変更」のリファクタリングを自動的に行ってくれる機能があり(リフレクションなどIDEが追跡可能な範囲を超える場合を除いて)、後から簡単に名前を変更することができる。このような機能は動的型付き言語用のIDEにもみられるものではあるが、IDEが追跡できる範囲がより限定的であるため、結局、IDEによる変更が正しいかどうかは目視に頼らざるを得ない。

静的型付き言語であっても、文字列を使ってリフレクションAPIを使用する場合など注意すべき点はあるのだが、その範囲が限定的であるため、名前の変更を安心して行うことができる。名前というのは後になってから変更したくなるものの一つであるため、これは静的型付き言語用の高度なIDE(Eclipse, NetBeans, IntelliJ IDEA等)の利点という事ができるだろう。

特にプロジェクトの初期に恥ずかしいtypoあるいは勘違いをしてしまい、その名前をあちこちで使った後に間違いに気づいた時にはとてもありがたい(動的型付き言語のIDEでこのテの、全体に広まってしまったtypoを直すのは結構大変である。たとえば、筆者はRubyMineというRuby on RailsIDE( このIDE自体は非常によくできている)で、Ruby on Railsで作られたアプリケーションに対してこのような作業を行った事があるが、なかなか大変な作業であった…)。

女子マネ弁当というものを体験してみた

ドワンゴに入社して最初のエントリなのにとてもくだらないことだが、入社してから7日目の今日、初めて女子マネ弁当に参加してきた。

最初、勝手が全くわからなかったので、同じチームの同僚に聞いたところ、それぞれの席についていたら10時30分からその場でラジオ体操をするとのこと。いわれてみれば、大量にいるドワンゴのエンジニアが一カ所に集まって体操をしたら凄まじい人口密度になると思われるわけで、これは当たり前か。ちなみに、朝、席についたところ、同じチームの人から「水島さん、朝、早いですね」とのお言葉が。入社1週間で早くもこんなことになっている。

というわけで、10時30分を待ったところ、女子マネ(?)の方がフロアに来て、体操を始める旨を告げる。その後、昔なつかしのラジオ体操をその場で行って終了。「女子マネ弁当」カードにスタンプを押してもらって終わり。

あとは昼頃になると、このスタンプ付きカードと引き換えに、弁当を得ることができるらしい(メニューは社内IRCで知ることができると聞いた)。この「女子マネ弁当」自分が起きる時刻にも合わないし、今後は出ることはないだろうなと思っていたのだが、意外と時間に合わせてラジオ体操をするのは悪くないもので、今後も出るかもしれない。

退職します

2014年3月末をもって、株式会社ユビレジを退職することになりました。在職期間は2年3ヶ月とそれほど長くありませんが、スタートアップ企業の顧客に近い位置で仕事をすることができて、とてもいい経験が出来たと考えています。

退職に関して

  • 新しい職場で自分の力量を試してみたくなったことと
  • 現在のユビレジにおいて自分が果たせる役目が一通り終わったという実感
  • そもそもユビレジにジョインした時点で、働き始めて2年間経ったら転職先を考えようと思っていた

というのが大きな理由です。

ユビレジに入った当初~去年4月までは、駒場東大前近くにある、通称ユビハウスという一軒家の1階をオフィス用として利用していました。おかげで、

  • 柿の木から柿を収穫(!)して食べた
  • 東大駒場キャンパスの食堂で昼食を食べた
  • タイカレーを皆で作って食べた
  • たこやきを皆で作って食べた

といった貴重な経験をすることができました…というのは冗談で(上記の話は本当ですが)、

  • ユビレジAPIの設計・実装・メンテナンス
  • Jenkin番人として社内のJenkins環境を整備。特に、pull requestに対して自動テストを走らせるように環境を整備するなど
  • iOSアプリ「ユビレジ2」の同期エンジンの再実装(20122013)
  • サーバサイドのユビレジWebアプリのメンテナンス・デプロイ
  • 技術的なトラブル対応
  • その他状況によって色々

等、様々なことをすることができました。

特に、私の場合体調が安定せず迷惑をかけたことがあるかなーという部分が正直あるのですが、寛大な処置で対応してくれたユビレジの皆様には本当に感謝しています(特にid:soutaroさん)。ユビレジでは現在もエンジニアを募集しているので、何かあったら、募集要項を読んで応募してみると良いと思います。私にどんな感じだったか聞いてもらっても良いです。

次の仕事

2014年4月1日から株式会社ドワンゴにて働くことが決まっています。Scalaで色々書いたりScala環境をよくするお仕事を主にする予定です。

なんだか最近、ドワンゴScalaな人が吸い込まれている気がしますね。特に気負わず、淡々とやるべきことをこなしていく所存です。今までよりScalaに関する時間を取れそうなので、情報発信やライブラリのメンテナンス、Scalaエヴァンジェリスト()としての活動も積極的にしていきたいところです。

Scala Conference in Japan 2014(仮)の正式名称を(Twitter上等で)公募しています

内容は表題の通りです。先日のエントリで書いたScala Conference in Japan 2014(仮)のキックオフミーティングですが(リモート参加もあるよ!)、参加してくださる予定の方は20名以上になったものの、正式名称公募の話をするのを忘れていたのでした。

ルールは簡単で、

2014年3月8日10:00(日本時間)までにTwitter上で #scalaconfjp タグを付けて、「Scala Conference in Japan 2014(仮)」の正式名称っぽいものをつぶやくだけです。このブログのコメント欄でも構いません。

その場のノリで考えたものでもいいので、応募お待ちしております。基本的にはつぶやかれたものから投票形式で正式名称を選びます(応募数がよほど少ない場合は除く)。なお、当選者(?)には商品はありませんが「Scala Conference in japan 2014(仮)」本番では、この名称が使われます。

Scala Conference in Japan 2014(仮) キックオフミーティングを開催します

こんばんは。早いもので、Scala Conference in Japan 2013の開催からほぼ1年が経ちました。

最近、会う人に、ときどき「今年もScala Conference in Japanやるの?」と聞かれることがあります。実はしばらく前から、今年も開催することは決まっていました。ただ、会場と招待講演者が決まっていなかったため、長い間水面下のやりとりにとどまっており、告知することができませんでした。

しかし、2月後半に入って、招待講演者と会場の両方が確定したので、イベントに向けて本格始動できるようになりました。というわけで、2014年3月8日(土)10:00~12:00に

Scala Conference in Japan 2014(仮) キックオフミーティング

を開催します(時間帯は若干変更の可能性があります)。

つきましては、イベントのスタッフをやりたい方や興味のある方の参加を募集しております。イベントの名称についても、この日に正式に決定する予定ですので、かっこいいイベント名称の案がある方の参加もお待ちしております。

キックオフミーティングに参加したい方はイベントページからご登録ください。

なお、Scala Conference in Japan 2014(仮)(長い…)の開催日は

  • 2014年9月6日(土)
  • 2014年9月7日(日)

で確定しています。これは招待講演者の都合上、ほぼ変わることはないので、参加を検討されている方はこの日を空けておいていただけると助かります。

2ヶ月間ダイエット始めます

以前から使っていたWi-Fi体重計がうまく動かないので、乾電池の接点の辺りを色々いじっていたら無事動作するようになりました。なったのはいいのですが…

体重を計ってみると、94kg!、以前から肥満気味で、去年は体重が85kg前後を推移していましたが、94kgはこれまでの人生で一番太っていた、D2の時期に匹敵する値です。体重計に乗った後、はっきり言って愕然としました。これはなんとかしないといけない、と。

というわけで、今からダイエットを始めることにします。方法としては以前試して効果が高かった糖質制限を基本にしていきます。最初から全力でいくと燃え尽きる可能性があるので、まず最初は夕食から主食(米、麺類等)を抜くところから始めていき、徐々に糖質を減らしていくつもりです。。

糖質制限の期間としては、今日から2ヶ月くらいをひとまずの目処にします(糖質制限をずっと続けるのは昨今の外食が糖質中心である事を考えると難しい面があるので)。つまり、ダイエット完了は今年の05/03ですね。その時点での目標体重は86kgです。1ヶ月で4kgなのでそこそこハイペースですが、現時点で太りすぎているのと、1ヶ月で4kgは過去実績を考えると無理ではないのでこれを目標にしてみます。

なお、今回行うのは糖質制限を中心にしたダイエットなので、ラーメンやご飯もの等、糖質がたっぷりある食事にはあまり誘わないでもらえると助かります。夕食が居酒屋だと糖質を摂らずに済むので割かしOKです>誰か

あとは、ダイエット上の工夫(糖質の減らしかた、何か食べたくなった場合に代替品として食べているもの等)を含めたアドバイスもしてくださると大変たすかります。なんだかずうずうしいですが、ダイエットの成功に向けて(もちろん、それだけが目標になってはいけませんが)頑張っていきたいところです。