方言を話すおしゃべり猫型ロボット『ミーア』をリリースしました(こちらをクリック)

Development/Design

application(Flutter)

[Scenario test tips] How to break it down into MECE and subdivide it moderately.

Notes and tips on writing scenario tests are described. What is required in writing scenario tests is the ability to strike a balance between breaking down the conditions into MECE but not over-dividing them. Scenario testing does not require direct description of the programming code.In other words, it can be described by non-engineers. It may be efficient for the PdM or UIUX person who created the mock-up, for example, to write the scenario test as it is.
AI

[Claude 3.5 Sonnet] Could it be as good as or better than GPT4o!?

One of ChatGPT's rivals, Anthropic, released Claude 3.5 Sonnet yesterday and we immediately tried it. According to their own research, it outperforms the competition (GPT-4o, Gemini1.5, Llama-400b) in most benchmark scores. When we tried it out, the response time to entering answers was very fast and the content was as good as GPT4o's.
application(Flutter)

[Flutter × Go × ESP32] How to add mute function to Mia.

After the release of the beta version of Mia, several users who actually used it asked for a 'no talking mode' for the frequency of talking, so the implementation of this feature is described in this report. For reference, we looked at Alexa and found that mute (in this case, goodnight mode) was indeed displayed on the home screen with a toggle icon.
Development/Design

[Golang] Practice of Test-Driven Development: From Migration File Creation to SQL Injection Countermeasures

Describes test-driven development in Go language, including migration file creation, SQL injection countermeasures and actual testing methods using dockertest. testutils.RunMySQLContainer function is called to start the MySQL container and connect to the database. RunMySQLContainer function to start the MySQL container and connect to the database.
Development/Design

[Flutter×FCM] Implementing Push Notifications: Up to Test Sending (iOS/Android)

The process of push notification using Firebase Cloud Messaging (FCM) consists of the following three steps. Message transmission from the server → delivery processing by FCM → reception and display by the app. iOS requires an APNs authentication key (p8 file).
application(Flutter)

[WordPress × FCM] How to send new announcements posted on a website to an app.

We want to post announcements in the announcements category of Mia's WordPress website, and when a new announcement is added, we want to send a push notification to the application, and when the user clicks on the push notification, they will be redirected to the list of announcements screen. In other words, we would like to centralise the management of announcements by posting them on the website.
Development/Design

[gRPC] Create a .proto file, compile it, and use it with the Go language.

Protocol Buffers (protobufs) are Interface Definition Languages (IDLs) used in gRPC to transmit data in smaller sizes and at a faster rate than traditional formats such as JSON and XML. Create a .proto file to define messages and gRPC methods
Development/Design

[Dart/TypeScript] Similarities and Differences. Static typing with type inference, single inheritance, abstract classes, Mixin, asynchronous

Both Dart and TypeScript are statically typed languages (types are determined at compile-time), but type annotations are optional and strong type inference works: abstract classes in Dart provide a means of enforcing concrete implementations in subclasses, while interfaces in TypeScript provide a means of enforcing a specific structure in classes. TypeScript interfaces provide a means of enforcing a specific structure on a class.
application(Flutter)

[ESP32] Implementation of Deep Sleep Mode and Timer Wake-Up Function

Introduction. Developing "Mia," a talking cat-shaped robot that speaks dialects. After releasing the beta version, sever...
Development/Design

[Web Development] Server-side rendering (SSR) → Emergence of Ajax and spread of SPA → Virtual DOM (React) → PWA

Server-side rendering (SSR): before 2000, all content was generated on the server and sent to the client; advent of Ajax and spread of SPA: from the early 2000s to around 2010, technology to update only part of the page through asynchronous communication using Ajax became popular and and SPA (Single Page Application) appeared.