2024年1月に書いた最新の記事はこちら 2018年10月にこのようなサービスをリリースしました。 友達と旅行などに行った時に発生するお金の貸し借りで「誰が誰に何円返せばいいんだっけ?」という問題をシンプルに解決してくれるWebアプリです。「調整さん」みたいに即席でグループページを作成して、そこに立替え履歴を登録しておけば、最も簡単な清算方法を計算してくれます。 当時、新卒2年目くらいで、会社の同期と初めてリリースした個人開発サービスです。 途中コロナで大打撃を喰らったのですが、ここ1年くらいは徐々に回復し始め、サービスリリースから約4年で月間30万ユーザーを達成することができました。 (👆2022年3月あたりから過去30日のユーザー数推移) 自分で言うのもアレですが、MAU30万は個人開発サービスではかなり当たっている方かなと思うので、ユーザー数が伸びなかったリリース当時、どういうこと
この記事は リクルートライフスタイル Advent Calendar2018の20日目の投稿です。 はじめに この記事では スマホ向け web ページをアプリっぽく見せるための Tips を多く紹介します。 (CSS / JS / jQuery / React / WebGL の事例を紹介します) (注) React 環境でのサンプルコードが多めですが、実装方法はどの環境でも変わらないと思います。ライブラリも同種のものが存在しているはずです。 最近だと、僕の大好きなアプリで味わった体験を、どうすれば Web で再現できるかなーって考えていました。そうしたネイティブアプリをWebで模倣したときに、知ったTipsやテクニックをまとめていきます。 この記事に書いてあること アプリっぽい体験はどのようなものがあるか CSS / JS / jQuery / React / GLSL を利用したネイテ
Preload web fonts 前回、といっても2年前だが、display=swapとはなにかで、Google Fontsを読み込むときはURLパラメータに display=swap をつけるといいよと言った。というわけで、それ以降、『目標をセンターに入れて、display=swap…』と盲目的に考えるようになってた。 おさらいとして display=swap では、まず代替フォントを表示し、Webフォントをダウンロードしたら、随時スワップするという挙動になる。この場合、代替フォントからWebフォントへ切り替わる FOUT (flash of unstyled text) が起こってしまう。こんな感じ↓ 出典:font-face descriptor playground まぁ何も表示されないよりかは良いかと思うわけだが、時は流れ、最近ではWebの指標として、Web Vitalsという
前のページへ 1|2 同人誌の“相場感”は存在するのか? さて、ここからは壁でも企業でもない、普通のサークル参加者にとっての「同人誌の相場感」について。本を出そうと思った人なら、誰でも一度は「ページ数 部数 価格」とかで検索したことがありますよね? これにもまた、さまざまな意見があります。 ページ数あたり○円が相場!(マンガなら…小説なら…カラーなら…) 全部売れて印刷代トントン程度なら良いと思う 出展費用も回収して良い 作品を書く労力までコスト換算するなら、それは趣味の活動ではない しかし、結論で言えば、相場感なんて存在しません。なぜなら、イベント出展はほとんどの参加者にとって赤字……つまり「消費活動」だから。一般参加者が予算の限り本を買うのと同様に、サークル参加者も予算の許す限りで本を作っているのです。 印刷代を回収しなくても活動を続けられる人は、原価割れや無料で配布していいでしょう。
山本裕介氏 (侍ズム #samuraism)が提供されている Twitter4J を用いて,Twitter API を叩く. ユーザ情報の取得と表示 Twitter twitter = new TwitterFactory().getInstance(); String screenName = "hogehoge"; //ユーザ情報の取得と表示 try { User user = twitter.showUser(screenName); System.out.println("User ID : " + user.getId()); System.out.println("ScreenName : " + user.getScreenName()); System.out.println("User's Name : " + user.getName()); System.out.pr
なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】UXUIDesignUIデザイン画面設計 1.はじめに エンジニアの私がデザインを本気で勉強した結果、デザイナーとエンジニアはそもそも思考が大きく違っているということがわかりました。 今回は「それ」をデザインに苦手意識のあるエンジニア方にも理解してもらえたらと思い、わかりやすくまとめてみました。 2.アプリの画面デザインを考えてみよう まず、こんなアプリを考えてみてください。 フィットネストレーナーが使うアプリ トレーニングルームでお客様とお話しながら使う 端末はタブレット そして 会員の個人情報確認 前回までのトレーニング状況の確認 次回の予約受付 といったことをします。 使える情報としては、こんな感じです。 あなたならどう画面デザインをするか、もしお時間があったら考えてみてください。
概要 JPAでbulk insertを行いたいのだが、@GeneratedValueを使ってidを自動採番させるとbulk insertができない。@GeneratedValueを使わない場合、primary keyを明示的に入力しなければならないので面倒。 自動採番した上でbulk insertする方法はないのか。 中々情報がないが、JPAの仕様を理解し直すところも含め、なんとか実現方法がないのか調査してみた。 今回はPostgreSQLを使っているが、MySQLでも原因と解決策はほとんど同じである。 ↓↓解決策だけ知りたい方は↓↓ 解決策 環境 OpenJDK 15.0.4 Spring Boot 2.5.4 org.springframework.data:spring-data-jpa:2.5.4 PostgreSQL 9.6.23 bulk insertを有効にするための設定 ま
普通に考えて、スコアとか、他の値も取りたいですよね。 group byしちゃうと取れないので、元のテーブルにjoinして取得しましょう。 select user_scores.* from user_scores inner join ( select user_id, max(created_at) created_at from user_scores group by user_id ) t1 on user_scores.user_id = t1.user_id and user_scores.created_at = t1.created_at ; こうなりますね。 usersテーブルにjoinしてscoreを取りたいよ〜という場合は、こうなります。 select users.*, latest_scores.score from users inner join ( selec
Spring Bootで簡単なコマンドラインアプリケーションを作成したときのメモを残しておきます。Springアプリケーションの起動時に1度だけ処理を実行したいとき(バッチ処理)や、コマンドライン引数を指定して処理を実行したいときに使えます。 コマンドラインアプリケーションを作成する方法 CommandLineRunnerインタフェースを実装したクラスを作成し、runメソッドをオーバーライドし、その中に処理を書いてやればOKです。あとは、クラスに@Componentを付与し、コンポーネントスキャンの対象にしてやれば、Springアプリケーション起動時にrunメソッドが実行されます。 試しに、Springアプリケーションを起動してみます。 runメソッドが実行されていますね。 コマンドライン引数を指定する場合 コマンドライン引数を指定して起動することもできます。 試しに、コマンドライン引数を
Spring Bootで定期的に処理を実行(スケジューリング)する方法をメモしておきます。バッチ処理を行う際に使えそうです。設定も簡単でした。 環境 Spring Bootでスケジューリングを有効化するためには、アプリケーションクラスに@EnableSchedulingアノテーションをつけます。 あとは、定期的に処理を実行したいメソッドに@ScheduledアノテーションをつけてやればOKです。 @Scheduledアノテーションで使用できるパラメータは以下のとおりです。 fixedDelay:メソッドの前回の実行完了時刻から何ミリ秒後に実行するか。 fixedRate:メソッドの前回の実行開始時刻から何ミリ秒後に実行するか。 initialDelay:メソッドの初回実行時の待機時間。単位はミリ秒。 cron:cronによるスケジュール設定。zoneによるタイムゾーンの指定も可能。 スケジ
短縮URLを展開する必要があったため、高速な展開方法を実装しました。 短縮URLサービスは90個以上あるそうで、個別のAPIを使ってたら埒があかない。以下のコードは、bit.ly, t.co, goo.gl などでテスト済みだけど、あらゆる短縮URLサービスで利用可能だと思います。 public abstract class UrlUtility { public static URL expandUrl(URL aUrl) throws IOException, ProtocolException { final URLConnection tURLConnection = aUrl.openConnection(Proxy.NO_PROXY); if (!(tURLConnection instanceof HttpURLConnection)) { return aUrl; } fi
twittered は Twitter API を利用するための Java 用のライブラリである。Twitter API v2 に対応している。 内部で JSON 用のライブラリである jackson を利用している。 twittered (GitHub) 導入 Maven を使っている場合には簡単に導入することができる。 pom.xml に以下のように記述する。 <dependency> <groupId>io.github.redouane59.twitter</groupId> <artifactId>twittered</artifactId> <version>2.21</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <vers
Spring Bootのかっこいいページネーションを考える February 16, 2020 Spring Boot Thymeleaf Spring Bootのページネーションを考えてみます。 コントローラ側の処理は省略しますが、簡単に言うとメソッドの仮引数 Pageable を定義するだけです。デフォルト値はこの仮引数にアノテーション @PageableDefault で指定します。 簡単に ネットを見ると、大体 ${#numbers.sequence(0, page.totalPages - 1)} で作るように書いてあります。こんな感じ。ちなみにスタイルはBootstrapを使ってます。(ここで書かれている page 変数は、JPAで取得できる org.springframework.data.domain.Page インタフェースです。) <nav aria-label="Pa
環境 macOS 10.12.6 MacBook pro 2016 VirtualBox 5.2.18 CentOS 7.6-1810 MySQL 5.7.25 リポジトリの追加 MySQLはyumコマンドでインストールします。 CentOS 7では公式のyumリポジトリにMySQLがないので、まずはMySQLの公式が用意しているリポジトリを追加します。 ※ yum と リポジトリ に関しては、こちらの記事をご覧ください。 rpmファイルをインストール まず、MySQL Yum リポジトリをシステムのリポジトリリストに追加します。この操作は一度だけ必要で、MySQL が提供する RPM をインストールすることで実行できます。次の手順に従います。 MySQL公式より ってことなので、公式が用意しているrpmファイルをインストールすれば、yumのリポジトリもいい感じに追加してくれるみたいです。
こんにちは、Mistirです。 『魍魎の匣』という小説がある。 文庫版 魍魎の匣 (講談社文庫) 作者: 京極夏彦 出版社/メーカー: 講談社 発売日: 1999/09/08 メディア: 文庫 購入: 17人 クリック: 539回 この商品を含むブログ (337件) を見る この小説に木場という「中身は無いが頑丈な箱」と自嘲する、そんな不器用な刑事が登場する。 無骨で実直、単純な正義として「敵」を追い求め、時に暴走してしまう…… 『魍魎の匣』はそんな木場という男の物語でもある。 木場は愚直で女っ気のない男だが、たった一枚、ある女優のプロマイドを持ち運んでいる。それは恋心というほど大仰なものではない、ちょっとした憧れのようなものだ。 そして、『魍魎の匣』で木場が関わった事件。 その事件には、プロマイドの女優が大きく関わっていてーー もうしばらく怪文書にお付き合いください ClariSから検索
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く