投稿時間:2023-07-31 22:26:08 RSSフィード2023-07-31 22:00 分まとめ(28件)

カテゴリー等 サイト名等 記事タイトル・トレンドワード等 リンクURL 頻出ワード・要約等/検索ボリューム 登録日
IT 気になる、記になる… Microsoft、「Surface Laptop 5」向けに2023年7月度のファームウェアアップデートをリリース https://taisy0.com/2023/07/31/174758.html microsoft 2023-07-31 12:43:26
IT 気になる、記になる… Appleの整備済み商品情報 2023/7/31 ー iMacやMacBook Air多数追加 https://taisy0.com/2023/07/31/174756.html apple 2023-07-31 12:08:33
IT ITmedia 総合記事一覧 [ITmedia News] 映画「バービー」日本公式が謝罪 “原爆ファンアート”に米公式がハートマーク 「極めて遺憾」 https://www.itmedia.co.jp/news/articles/2307/31/news191.html barbernheimer 2023-07-31 21:40:00
TECH Techable(テッカブル) たった1分でブログ記事を丸ごと作成!「AI Writer」β版を実際に使ってみた https://techable.jp/archives/214752 chatgpt 2023-07-31 12:30:14
AWS AWS Partner Network (APN) Blog How AWS Partners Can Drive Cloud Transformation for Customers Through Experience-Based Acceleration https://aws.amazon.com/blogs/apn/how-aws-partners-can-drive-cloud-transformation-for-customers-through-experience-based-acceleration/ How AWS Partners Can Drive Cloud Transformation for Customers Through Experience Based AccelerationThe ability for AWS Partners to scale cloud transformation for their customers is essential to partners ability to retain and grow their business This post aims to educate AWS Partners on using Experience Based Acceleration EBA as a mechanism to drive cloud transformation and increase time to value for AWS customers The information presented here will enable AWS Partners to leverage the EBA methodology and we ll highlight best practices for rapid modernization through agile transformation 2023-07-31 12:51:26
python Pythonタグが付けられた新着投稿 - Qiita Sentence transformersをファインチューニング https://qiita.com/KENTAROSZK/items/3c96053bc0d7116cb1f3 sentencetrasnfo 2023-07-31 21:48:51
技術ブログ Developers.IO Terraform version 1.5の新機能達を使ってみた https://dev.classmethod.jp/articles/terraform-version-1-5/ check 2023-07-31 12:54:28
技術ブログ Developers.IO Cloud Storageのイベントトリガーで9分動く第2世代Cloud FunctionsをHTTPトリガーに変えて60分動かせるようにしてみた https://dev.classmethod.jp/articles/cloud-storage-eventtrigger-change-httptrigger/ cloudfunctions 2023-07-31 12:47:08
技術ブログ Developers.IO DNF でインストールやアップデートした履歴を確認してみた https://dev.classmethod.jp/articles/dnf-history/ amazon 2023-07-31 12:43:24
技術ブログ Developers.IO Alteryx 2023.1 新機能:Designer Desktopのコントロールコンテナツールを試してみた – Alteryx Inspire 2023 https://dev.classmethod.jp/articles/alteryx-inspire-2023-control-container-tool/ alteryx 2023-07-31 12:18:13
技術ブログ Developers.IO Amazon DynamoDB を ASP.NET Core の分散キャッシュストレージとして使用できる AWS .NET Distributed Cache Provider for DynamoDB を使ってみた https://dev.classmethod.jp/articles/net-distributed-cache-provider-dynamodb/ AmazonDynamoDBをASPNETCoreの分散キャッシュストレージとして使用できるAWSNETDistributedCacheProviderforDynamoDBを使ってみたいわさです。 2023-07-31 12:16:24
海外TECH MakeUseOf What Is Apple Family Sharing and How Do You Use It? https://www.makeuseof.com/tag/set-family-sharing-share-apps-music-itunes-purchases/ access 2023-07-31 12:45:22
海外TECH MakeUseOf What's the Worst iPhone to Buy in 2023? https://www.makeuseof.com/worst-iphone-to-buy/ iphone 2023-07-31 12:30:22
海外TECH DEV Community 🔥 Building an email automation system with React Flow and Resend 🎉 https://dev.to/novu/building-an-email-automation-system-with-react-flow-and-resend-17b5 Building an email automation system with React Flow and Resend TL DRIn this tutorial you ll learn how to build an email automation system to message people with a sequence of messages every minutes Build a client diagram representing the flow of emails with React Flow ⿳Send email according to the flow every minutes with Resend Novu the first open source notification infrastructureJust a quick background about us Novu is an open source notification infrastructure We basically help to manage all the product notifications It can be In App the bell icon like you have in the Dev Community Websockets Emails SMSs and so on We actually implemented ReactFlow and Resend in our project as wellI would be super happy if you could give us a star It will help me to make more articles every week ReactFlow to build your flow ReactFlow is an easy to use library for building anything from static diagrams to data visualizations and even complex visual editors It is highly customizable and provides various in built features such as dragging nodes around zooming and panning selecting multiple nodes and edges and many more by default In this article you ll learn how to add interactive diagrams to your React apps with ReactFlow and how to send emails with Resend by building an email outreach application The application accepts various email content via nodes in ReactFlow and sends them as email messages Let s set it up Here I ll walk you through installing the package dependencies required for this project using Next js v npx create next app email outreach appRun the code snippet below to install the ReactFlow and Resend packages npm install reactflow resendFinally install React Redux and Redux Toolkit packages to enable us to manage states within the application npm install react redux reduxjs toolkit Putting the basic page layout Here we ll create a form that accepts an email a subject and a series of nodes containing the messages you want to send to the recipient The messages will be sent at an interval of minutes First copy the code snippet below into the pages index js file import Head from next head import useState from react export default function Home const email setEmail useState const subject setSubject useState const handleSubmit e gt e preventDefault console log email subject setEmail setSubject return lt gt lt Head gt lt title gt Email Outreach Resend amp ReactFlow lt title gt lt meta name description content Generated by create next app gt lt meta name viewport content width device width initial scale gt lt link rel icon href favicon ico gt lt Head gt lt main className main gt lt header className header gt lt h style marginBottom px gt Email Outreach with ReactFlow and Resend lt h gt lt header gt lt form className form onSubmit handleSubmit gt lt label htmlFor email gt Email lt label gt lt input type email name email id email className input value email required onChange e gt setEmail e target value gt lt label htmlFor subject gt Subject lt label gt lt input type text name subject id subject className input value subject required onChange e gt setSubject e target value gt ReactFlow Component placeholder lt button className submitBtn gt START AUTOMATION lt button gt lt form gt lt main gt lt gt The code snippet above creates a simple form that accepts the recipient s email address and the subject of the email In the upcoming section we ll add the ReactFlow component Managing states within the ReactFlow componentsBefore you import the ReactFlow components let s set up the state management library Redux Toolkit  PS You don t need a state management library to use ReactFlow We are using Redux to enable us to track the input within the component and update the application s state accordingly Otherwise  you can add ReactFlow components easily Therefore create a redux folder containing a nodes js and a store js file mkdir reduxcd reduxtouch nodes js store jsCopy the code snippet below into the redux nodes js file import createSlice from reduxjs toolkit const addNode object gt const newNode id Number object id type task position x y object position y data value return newNode const addEdge object gt const newEdge id object id gt Number object id source object id target Number object id return newEdge The code snippet above contains two functions that accept an object the last element in the nodes array and returns another object containing the values above Next add the code snippet below the functions in the same file below the functions within the same file functions export const nodeSlice createSlice name nodes initialState nodes id type task position x y data value edges reducers setNodes state action gt let nodes state nodes state nodes state nodes addNode nodes nodes length state edges state edges addEdge nodes nodes length updateNodeValue state action gt let nodes state nodes let objectIndex nodes findIndex obj gt obj id action payload id if objectIndex state nodes objectIndex nodes objectIndex data value action payload value Action creators are generated for each case reducer functionexport const setNodes updateNodeValue nodeSlice actions export default nodeSlice reducer From the code snippet above We created two states nodes and edges arrays The nodes state has a single element representing the initial node in the diagram The setNodes reducer updates the nodes and edges array It executes when the user clicks the Add button within each diagram node The updateNodeValue reducer tracks the input within each node of the diagram and updates the right node with its new value Add the node reducer to the store js file import configureStore from reduxjs toolkit import nodeReducer from nodes export const store configureStore reducer nodes nodeReducer Finally make the store available to the whole application by updating the app js file import store from redux store import styles globals css import Provider from react redux export default function App Component pageProps return lt Provider store store gt lt Component pageProps gt lt Provider gt Congratulations You ve set up the states required for the diagram Next let s add it to the app Adding the ReactFlow componentsSince we are using a custom component for each node in the diagram create a components folder containing a Task js file mkdir componentscd componentstouch Task jsCopy the code below into the Task js file The Task component represents each node in the diagram import useState from react import Handle Position from reactflow import useSelector useDispatch from react redux import setNodes updateNodeValue from redux nodes export default function Task id const initialNodes useSelector state gt state nodes nodes const value setValue useState const dispatch useDispatch return lt gt lt Handle type target position Position Top gt lt div style padding px backgroundColor FFF borderRadius px gt lt input className textInput type text required onChange e gt setValue e target value dispatch updateNodeValue id value e target value value value gt Number id initialNodes length amp amp lt button onClick gt dispatch setNodes className addBtn gt ADD NODE lt button gt lt div gt lt Handle type source position Position Bottom id a gt lt gt From the code snippet above The Handle components rendered at the top and bottom connect each node to another It has a type prop that determines whether the node is a source or target The Add Node button triggers the setNodes reducer When a user updates the content within the input field the updateNodeValue reducer is also triggered to update the selected note with the input value Each node in the diagram has a data and an id props containing the details of that node Next add the following imports to the pages index js file import useState useCallback useMemo useEffect from react import ReactFlow useNodesState useEdgesState getIncomers getOutgoers addEdge getConnectedEdges from reactflow import reactflow dist style css import Task from components Task import useSelector from react redux Add the code snippet below within the Home component on the pages index js file const initialNodes useSelector state gt state nodes nodes const initialEdges useSelector state gt state nodes edges const nodes setNodes onNodesChange useNodesState initialNodes const edges setEdges onEdgesChange useEdgesState initialEdges const nodeTypes useMemo gt task Task useEffect gt setNodes initialNodes setEdges initialEdges initialNodes setNodes initialEdges setEdges const onConnect useCallback params gt setEdges eds gt addEdge params eds setEdges From the code snippet above The nodes and edges from the Redux state are set as the nodes and edges for the diagram using the useNodesState and useEdgesState hooks provided by ReactFlow The nodeTypes variable enables us to customise each node Task is our custom component The onConnect function executes when you add a new node The useEffect hook runs when there are changes in the edges and the nodes Finally add the ReactFlow component to the user interface as done below return lt form gt other form elements lt div style height vh width marginTop px gt lt ReactFlow nodes nodes edges edges onNodesChange onNodesChange onEdgesChange onEdgesChange onConnect onConnect nodeTypes nodeTypes gt lt div gt lt button className submitBtn gt START AUTOMATION lt button gt lt form gt Congratulations you ve successfully added the diagram to your application Resend com to send your emails In this section you ll learn how to send emails with Resend by sending the inputs in each node to the email provided on the form Resend is an email API that enables you to send texts attachments and email templates easily With Resend you can build test and deliver transactional emails at scale One of its best features is that your messages don t end up in the recipient s spam box but in the recipient s inbox We ve already installed Resend at the beginning of this tutorial Therefore go to the Signup page and create an account Create an API Key and save it into a env local file within your Next js project RESEND API KEY lt place your API key gt Next create a send js file within the pages api folder and copy the code below into the file within the send js fileimport Resend from resend initiate the resend instanceconst resend new Resend process env RESEND API KEY const timer time gt return new Promise res gt setTimeout gt res true time export default async function handler req res const subject email tasks req body if subject tasks email res status json invalid true for const task of tasks await resend emails send from name yourcompany dev to email subject text task Wait minutes await timer res status json invalid false The code snippet above receives the subject recipient and email content from the request and sends an email to the recipient via Resend Please be advice that there is a delay of minutes between emails This will not be possible to be deployed to Vercel as their free package support a maximum of seconds per request You can absolutly test it on your local machine In production such a thing would need to go into a queue that sends the email every X amount of time Add the following functions within the pages index js file const sendEmail index gt fetch api send method POST body JSON stringify email subject tasks nodes map data gt data value map all nodes to a string array headers Content Type application json then data gt alert Sent to processing catch err gt alert Encountered an error when message index console error err The functions above loop through the nodes in the ReactFlow diagram and sends an email containing the node s value to the recipient at intervals Finally execute the function when a user submits the form const handleSubmit e gt e preventDefault sendEmail Send to server setEmail Reset the input setSubject Reset the input Let s wrap it up So far you ve learned how to add interactive diagrams to your application with ReactFlow and send emails with Resend ReactFlow is a popular open source library that enables us to build interactive and customizable flowcharts and diagrams If you want to build an application that requires drag and drop functionality and customizable graphical UI elements you should consider using ReactFlow The source code for this tutorial is available here  Thank you for reading Help me out If you feel like this article helped you understand email automation better I would be super happy if you could give us a star And let me also know in the comments ️ 2023-07-31 12:44:48
海外TECH DEV Community The Springboard Pattern https://dev.to/solidi/the-springboard-pattern-3o04 The Springboard Pattern How to build new features in isolationA few years ago at an agile demo a stakeholder made a special appearance The team was closing in on a minimum viable product The demonstration focused on sound effects and animations The group revealed a configurable animation board to demo the results quickly The experiences were easy to launch consecutively isolated and variably configured The animation board did not depend on the more extensive system but the intention was to tie each animation later While the team demoed the stakeholder asked if we evaluate the animation board for further experimentation With this feedback the group noted the unrealized value and quickly wrote down what to explore next Of course this wasn t the first time the team used the technique We made similar discoveries in future demos The team was aware the feature containment were incredibly powerful both for their demos and for product value For us as engineers naming things is hard Harder still is how to communicate something To the above story there exists no vocabulary to describe the effort of execution There is no description for the iterative containment orchestration in software engineering So this is what I propose a definition to describe the unique execution with its benefits and drawbacks Developing and demoing in containment is an example of what I call the springboard pattern Let s describe what the pattern is What Is The Springboard Pattern The springboard pattern is known as a visual design pattern Mobile operating systems that constrain viewing areas have used the pattern widely The app launcher is an example Our introductory story and its animation board also fit this model We can think of the animation board as the contained screen launcher and each animation as an organized app with its configurations When applied to software development the springboard pattern acts as a guardrail to develop features in isolated pieces that are easily demonstrable on the platform There are many benefits to engineering and product The design is a way to execute both iteratively and incrementally operationally The springboard pattern is a way to keep dependencies in check and develop features on a cycle centered around product demonstrations Here are the rules an engineer must follow while iterating The feature It launches from a board that includes other features Can launch quickly with minimum setup It can launch on its own and in any order The configuration is possible to launch in any state The feature resists larger system coupling and dependencies If we follow these rules during feature development magic happens Benefits include the promotion of modularity testability and build time Additional improvements include product ideation that is unrealized engineer efficiency and advantages of the framework Let s discuss these next Promotes ModularityThe springboard pattern insists on developing features in isolation from one another In each design segment the team must do their best to create a solution in containment Dependencies will always be present but the layers separate the feature for demonstration cleanly The feature should be modularized and independent As the iterations continue and demos succeed the springboard items integrate into the extensive system As this occurs the team should continue to resist coupling and ensure the feature code cohesion is high From start to finish each item should have a weak measure of connascence At any time during the cycle pattern violation can diminish the return of the modularization Therefore the team must make prudent and deliberate decisions by leaning on tools of layering wrapping and flow of control using dependency inversion Supports Testability And Build TimeThe development of a demonstrable item from the springboard demands testability The unit tests will also serve as documentation of the module The concept of the springboard pattern is one that promotes testability Its dependencies should be highly configurable The feature should have available configurations available for its dependency injections Thus this supports ease of testing and mocking of all situations of the component Build time also is maintained and the complexity of the codebase is normalized with each feature Incoming features can be flagged to be unbuilt by the toolset Features that are rejected from demos are continuously removed Finally a natural phenomenon of the springboard pattern can reveal diagnostic test tooling of that unique feature The feature had started life without the extensive system The springboard can make tools that test part of the feature in contra to the more comprehensive system as they are their subsystems Product Ideation And Engineer EfficiencyOpportunities happen when products are deconstructed into independent pieces In the case of the introduction example there appeared to be an unrealized product value in the use of an animation board Stakeholders refer to the features of their products as cohesive constructs and use vocabulary to describe them Wouldn t it be powerful to find the part without friction immediately The springboard gives us a learning library and allows for cross pollination between engineers and gives us a tool to locate each feature quickly As an additional benefit the engineer s work is always available for demonstration at a moment s notice An isolated solution offsets the typical cost of the time to prepare for the demo you are giving time for the engineers to prep yes Mileage may vary depending on the domain and the reception from stakeholders In the most pragmatic terms products must predict less and experiment more Having the features deconstructed and isolated may indicate a different outcome or a reconfiguration of that product value Framework SupportWith the springboard pattern there could be undiscovered efficiency benefits that coincide with features of the framework The framework the team works with may vary For this post I ll discuss Android concerning the use of a springboard Recently in the Android ecosystem Google has launched Instant Apps and discussed at length the incorporation and break out of new concepts in the area called feature modules As we can see from above everything that is demonstrable to stakeholders should be modular and isolated As development continues insulate each feature from significant dependencies and optimize them for every feature The product team may want to launch these features separately or together Another example of Android is the concept of isolated activities Each activity should be able to launch in isolation taking what it needs to survive an experience If features are built in isolated activities reconfiguration of the pieces of an application is possible Finally with the latest versions of Android its tooling have significantly improved Independent modules allow for building abilities which significantly reduce build time Setups that use a flavored code organization may cause building delays especially if the product dimensions are extensive Before we conclude there are drawbacks to consider DrawbacksThere are possible drawbacks to this mode of execution The team will have to make decisions that make the most sense to steer clear of over engineering The springboard approach may Violate YAGNI ー“You ain t gonna need it The team should build what they need and not a single line more Accelerate decisions ーdeferring architectural choices is an excellent strategy to keep complexity manageable Operating this way may force challenging code decisions sooner Increase complexity ーadditional logic to support layering and modularization may increase development time However keep in mind that the cost paid will most certainly provide a cost benefit for code that is consistent and adaptable Adaptability needs room to breathe The code and products deserve that breathing room Now let s wrap this up Spring Into ActionDeveloping for isolation and modularity is a practice all engineers should strive for However there had not been a pragmatic approach to these concepts and a way to describe how to execute on them It is assumed engineers build this way but the reality is that they do not The springboard pattern in software development finally gives us a word to communicate our intention both in software execution When adhering to this pattern we manage complexity and increase optionality As described above the benefits are plenty but be aware of the cost of drawbacks The springboard pattern takes effort and drive but the benefits could be incredible to the team and their products Center the way around the team demos and adhere to it 2023-07-31 12:35:53
海外TECH DEV Community 🔥 Why I chose Tauri instead of Electron 🔥 https://dev.to/goenning/why-i-chose-tauri-instead-of-electron-34h9 Why I chose Tauri instead of Electron TL DRI struggled to get started with Electron which led me to find Tauri It got me hooked due to it s incredible developer experience and I thought I d share the journey of building an app with Tauri How it all started About a year ago I decided to experiment with building a Desktop application I wasn t happy with the other apps in the niche I was working on and I thought I could build something better I have worked as a full stack developer for a very long time but I had never built a desktop application before My first thought was to build with SwiftUI Developers love native apps and I ve always wanted to learn Swift However building on SwiftUI would limit my audience to macOS users only I had a feeling that most of the users would be on macOS anyway but why limit myself when I could build a cross platform app Looking back now I m really glad I discarded SwiftUI early on Just look at the diverse number of operating systems that people are using my app on By the way this screenshot is from Aptabase an open source analytics platform I m working on Drop us a ️if you like it What about Electron I don t live under a rock so I knew that Electron was a thing and that many of the popular apps I use daily are built on Electron including the editor I m using right now to write this post It seemed like a perfect fit for what I was trying to do because Single code base can target multiple platforms Works with React TypeScript Tailwind which I m already familiar with Very popular lots of resources and guides NPM is the largest is it package ecosystem out there which means I can ship things faster The other benefit of building on Electron was that I d be able to focus on building the app rather than learning something completely new I love learning new languages and frameworks but I wanted to build something useful quickly I d still have to learn about Electron itself but it wouldn t be as steep as learning Swift and SwiftUI Okay let s get started I was settled Aptakube was going to be built with Electron I normally don t read the documentation I know I should but I don t However I always read the Getting Started section whenever I pick a framework for the first time Popular frameworks have a npx create framework name that quickly bootstraps an app for us Next js Expo Remix and a lot of others have this I found this super useful because they allow you to get started quickly and they often give you a bunch of options like Do you want TypeScript or JavaScript Do you want to use a CSS framework What about Tailwind Prettier and or ESLint Do you want this or that The list goes on It s such a great developer experience that I wish every framework had one Can I just npx create electron app Apparently I can t or at least I haven t found a way to do it certainly not in the Getting Started section What I found instead was a quick start template that I could clone from Git install the dependencies and be on my way However it s not TypeScript there is no bundler no CSS framework no linting no formatting nothing It s just a bare bones app that opens a window I started building with this template and adding all the things I wanted to make it work I thought it would be easy but it wasn t An electron app has three entry points main preload and renderer Wiring that all up with Vite was painful I spent around weeks of my free time trying to get everything working I failed and I got frustrated I then found dozens of other boilerplates for Electron I tried about five of them Some were OK ish but I was a bit put off by the fact that most templates were too opinionated and installed way too many dependencies that I didn t even know what they were used for Some didn t even work at all as they ve been abandoned for years In summary the developer experience for someone new to Electron is below average Next js and Expo have set the bar so high that I ve come to expect that every framework would offer a similar experience So what now While mindlessly scrolling through Twitter I saw a tweet from Tauri about the release They had been around for years at that point but I had no idea what Tauri was I went to their website and I was blown away It seemed like exactly what I was looking for Do you know the best part They had a npm create tauri app instruction right there on the home page I decided to give it a try I ran the create the tauri app command and the experience was very similar to Next js It asked me a few questions and then it created a new project for me based on my choices At the end of the process I could simply run npm run dev and I had a working app with hot reload TypeScript Vite and Solid js pretty much everything I needed to get started I was impressed and excited to learn more I had to add Prettier Linters Tailwind and all that kind of stuff but I m used to it and it was easier than in Electron Getting started again but with TauriWhile in Electron I could build the whole app with just JavaScript HTML CSS in Tauri the backend is in Rust and only the frontend is JavaScript That obviously meant I had to learn Rust which I was excited about but also did not want to spend much time on as I wanted to build the prototype quickly I ve used programming languages professionally so I thought learning Rust would be a walk in the park I was wrong I was so wrong Rust is hard like really hard or at least it was for me One year later after more than releases of my app I still can t say I truly know Rust I know enough to be constantly shipping new features on a regular basis but I m still learning so much every time I have to write something in Rust GitHub Copilot and ChatGPT have been a huge help and I still use them both a lot However there is something in Tauri that makes this process a lot easier Tauri has the concept of a Command which is like a bridge between the frontend and backend You can define commands in your Tauri backend using Rust and call them from JavaScript Tauri itself provides a bunch of commands that you can use out of the box For example you can open a file dialog read update delete a file make HTTP requests and a lot of other interactions with the operating system right from JavaScript without having to write any Rust code Well what if you need to do something that is not available in Tauri That s where Plugins come in Plugins are Rust libraries that define commands you can use in your Tauri app I ll talk more about plugins later but just think of them as a way to extend Tauri s functionality I ve actually asked a lot of people building apps in Tauri if they had to write Rust code to build their apps Most of them said they had to write very little Rust for some niche use cases It s totally possible to build a Tauri app without writing any Rust code at all So how does Tauri compare to Electron Programming Language and EcosystemIn Electron your backend is a Node js process and your frontend is Chromium which means a web developer can build a desktop app with just JavaScript HTML CSS There s a huge ecosystem of libraries on NPM and there is just so much content about it on the internet that makes the learning process a lot easier However while it s generally seen as a good thing to be able to share code between the backend and frontend it can also get confusing as developers might try to use backend functions on the frontend and vice versa So you d have to be careful not to mix things up In contrast Tauri s backend is Rust and the frontend is also a webview more on this next While there are a significant number of Rust libraries they re nowhere near the size of NPM The Rust community is also a lot smaller than the JavaScript community which means there s less content about it on the internet But as mentioned above depending on what you ll be building you might not even need to write much Rust code at all My opinion I simply love the clear separation of backend and frontend that we get in Tauri If I m writing a piece of code in Rust I know it ll be running as an OS process and I have access to the network file system and a bunch of other things while everything I have written in JavaScript is guaranteed to be running on a webview Learning Rust has not been easy for me but I m enjoying the process and I m learning a lot of new things in general Rust has started to grow in me WebviewIn Electron the frontend is a Chromium webview that is bundled with the app This means you can always be certain of the version of Node js and Chromium version used by your app regardless of the operating system This comes with major benefits but also some drawbacks The biggest benefit is the ease of development and testing you know what features are available and if something works on macOS it ll more than likely work on Windows and Linux as well The drawback however is that your app size will be a lot bigger because of all these binaries bundled into it Tauri takes a drastically different approach Instead of bundling Chromium with your app it uses the operating system s default webview This means that on macOS your app will use WebKit Safari s engine on Windows it ll use WebView which is based on Chromium and on Linux it ll use WebKitGTK same as Safari s The end result is an extremely small app that feels super fast As a reference my Tauri app weighs MB on macOS while my competitor s app Electron weighs GB Why does it matter It s so much faster to download and install It costs less to host and distribute I run on AWS so I pay for bandwidth and storage I often get asked if my app is built with Swift as users usually have a this feels like a native app moment when they see such a small and fast app Security is handled by the OS If there s a security issue with WebKit Apple will release a security update and my app will simply use it I don t have to ship an updated version of my app to fix it My opinion I like the fact that my app is so small and fast I was initially worried about the lack of consistency between operating systems because that meant I needed to test my app on all operating systems but I haven t had any issues so far Web developers are used to this anyway as we have been building multi browser apps for such a long time Bundlers and polyfills also help a lot in this regard PluginsI briefly mentioned this before but I think it s worth going into more detail as it s one of the best features of Tauri in my opinion A plugin is a collection of Commands written in Rust that can be called from JavaScript It allows developers to compose applications by putting together different plugins that can either be open source or defined within your app It s a nice way of structuring an app and it makes it easy to share code between different apps too Some examples of plugins you ll find in the Tauri ecosystem tauri plugin log Configurable logging tauri plugin store Configurable logging tauri plugin window state Persist window sizes and positions window vibrancy Make your windows vibrant tauri plugin sql Make your windows vibrant tauri plugin aptabase Analytics for Tauri apps and a lot more These features could have been part of Tauri itself but having them separately means you can pick and choose what you want to use It also means they can evolve independently and be replaced with alternatives if something better gets released The plugin system was the second biggest reason why I chose Tauri it makes the developer experience x better Feature ParityWhen it comes to features both Electron and Tauri are very similar Electron still has a few more features but Tauri is catching up fast At least for my use case Tauri has everything I need The only major inconvenience for me was the lack of a Native Context Menu API This is a highly requested feature by the community and would make Tauri apps feel a lot more native I m currently doing this with JS HTML CSS which is OK but could be better Hopefully we ll see this land in Tauri But other than that there s plenty in Tauri Right out of the box you get notifications tray menu dialog file system networking window management auto updating packaging code signing GitHub actions sidecars etc And if you need something else you can always write a plugin for it or use one of the existing ones MobileThis one came as a surprise to me At the time I m writing this Tauri has experimental support for iOS and Android It seems like it was always part of the plan but I didn t know about it when I started my app I m not sure if I ll ever use it but it s nice to know it s there This is something that is not possible with Electron and probably never will be So if you re planning to build a cross platform mobile and desktop app Tauri may be the way to go as you d likely be able to share a lot of code between them Designing mobile first interfaces with web technologies has gotten a lot easier over the years so building a single interface that could run as a desktop and mobile app is not as crazy as it sounds I ll just drop this here to get you all excited about the future of Tauri As Jonas mentioned in his tweet this is experimental and hacky it might take a long time to be production ready but it s still very exciting to see the innovation happening in this space ConclusionI m very happy with my decision to use Tauri Combined with Solid js I was able to make a really fast app and people love it I m not saying it s always better than Electron but if it has the features you need I d say give it a try As mentioned before you might not even need to write that much code in Rust so don t get intimidated by that You ll be surprised by how much you can do with just JavaScript In case you re into Kubernetes check out Aptakube a Kubernetes Desktop Client built with Tauri I m now working on Aptabase an open source and privacy friendly analytics platform for desktop and mobile apps It already has SDKs for various frameworks including Tauri and Electron By the way the Tauri SDK is packaged as a Tauri Plugin Lastly I m also active on Twitter Feel free to reach out if you have any questions or feedback I love talking about Tauri Thanks for reading 2023-07-31 12:33:44
海外TECH DEV Community 4 Best APIs For AI Voice Generators https://dev.to/gabriela_avi/4-best-apis-for-ai-voice-generators-3pke Best APIs For AI Voice GeneratorsA voice generator API is a tool that allows developers to easily integrate voice recognition into their applications or websites It can be used to recognize speech or audio data and translate it into text or commands In addition it can be used to perform tasks like creating a digital assistant that can understand and respond to spoken commands Incorporating a voice recognition API into your application can help improve the user experience and usability by allowing users to interact with your app using their voice If you re looking for the best APIs for voice recognition you ve come to the right place We ve compiled a list of the best four APIs available today YouTube To Audio APIThe YouTube to Audio API is not a straightforward voice generator API However it can transform any YouTube video into an MP file by simply providing a YouTube ID At a bitrate of kbps it quickly and effectively extracts YouTube videos best audio If you follow YouTube s terms of service you are permitted to use the site for both personal and professional reasons  How to BeginSimply create an account with Zyla Labs Hub and subscribe to it to start using the YouTube to Audio API To test this API select the Get Audio endpoint and then enter the YouTube ID of the video whose audio file you want to get Finally choose test endpoint to start the API After that you will shortly receive a URL for an MP file For example we downloaded the MP version of the Nickelback song If Today Was Your Last Day using the YouTube ID lrXIQQPeRs We obtain the following information as a result of the API call link link h pQ mRhFgxPfxWcxeaA amp s amp n Nickelback If Today Was Your Last Day BOFFICIAL VIDEO D title Nickelback If Today Was Your Last Day OFFICIAL VIDEO progress duration status ok msg success You can access the If Today Was Your Last Day download page by pasting the aforementioned link into your browser   Murf AIMurf AI is a versatile AI voice generator that offers over text to speech voices in languages You can use Murf s lifelike AI voices for podcasts videos and all your professional presentations You can also upload your video music or image and sync it with the voice of your choice You can play with pitch punctuation and emphasis to make the AI voices carry your message however you like TypecastTypecast is an online AI voice generator that puts emotions in text to speech You can choose from more than voice actors suitable for all purposes You can also create your next best video with their human like virtual avatars Typecast makes editing videos easy by saving you time and the hassle of production costs You can also control emotions and tones that are tailored to your narrative SpeechifySpeechify is a simple and easy AI voice generator that only converts text to speech You can type in the text you d like to hear spoken or import it from a file or URL You can select a voice and listening speed and press generate Speechify has a free tier and a premium plan that offers more features and voices Whether you are looking for an IA generator that can transform text to audio or if you want a tool that can transform Youtube video to MP this post has all the information you need Feel free to try any of the APIs mentioned above regarding your business or personal needs 2023-07-31 12:25:30
Apple AppleInsider - Frontpage News Piper Sandler hikes Apple stock price target to $220 on long-term forecast https://appleinsider.com/articles/23/07/31/piper-sandler-hikes-apple-stock-price-target-to-220-on-long-term-forecast?utm_medium=rss Piper Sandler hikes Apple stock price target to on long term forecastWhile Apple may see earnings below Wall Street s expectations on the quarter the iPhone and strong China results have driven an Apple Stock price target increase by investment bank Piper Sandler Analysts are offering their opinions on Apple s financial status ahead of the August Q financial results release In the view of Piper Sandler the quarter after that is more interesting In a note to investors seen by AppleInsider Harsh Kumar at Piper Sandler uses its Apple Earnings Preview to discuss Chinese demand for the most part with the majority of attention being on the September quarter rather than the June one about to be released by the company Read more 2023-07-31 12:05:40
Apple AppleInsider - Frontpage News What analysts expect from Apple's Q3 2023 earnings report https://appleinsider.com/articles/23/07/30/what-analysts-expect-from-apples-q3-2023-earnings-report?utm_medium=rss What analysts expect from Apple x s Q earnings reportApple s third fiscal quarter results will be issued on August accompanied by the usual call with analysts Here s what to expect from the results and what Wall Street thinks of the iPhone maker Apple confirmed its quarterly results will be released on August back on July As is typical for the event it will be followed by a call hosted by CEO Tim Cook and CFO Luca Maestri with the results released at around PM ET and the call itself starting from PM ET Some Apple guidance Read more 2023-07-31 12:08:39
海外TECH Engadget Twitter threatens to sue anti-hate group over its research https://www.engadget.com/twitter-threatens-to-sue-anti-hate-group-over-its-research-125645342.html?src=rss Twitter threatens to sue anti hate group over its researchX Corp aka Twitter may take legal action against one of its more outspoken critics The Center for Countering Digital Hate CCDH says in a letter that X threatened a lawsuit against the anti hate group on July th for allegedly making quot false or misleading quot claims against the social media giant and trying to scare advertisers The Center published a research article in June asserting that X allowed explicitly racist and homophobic posts despite policies to the contrary even days after they d been reported X accused CCDH of using poor methodology and not studying the million posts on the service each day It also maintained that the Center was taking funding from competitors or foreign governments as part of an quot ulterior agenda quot according to The New York Times CCDH rejects the allegations It notes that it never claimed to be conducting a comprehensive study and points to its documented methodology It adds that X never said just what was inaccurate and that it doesn t accept any funding from companies or governments X has disbanded its communications team and isn t available for comment CCDH says it quot will not be bullied quot and will continue publishing its research It also intends to post the original letter and believes a lawsuit with quot frivolous quot claims could prove risky This is a developing story Please check back for updates This article originally appeared on Engadget at 2023-07-31 12:56:45
ニュース BBC News - Home NEU teacher strikes end as members in England accept pay deal https://www.bbc.co.uk/news/education-66360677?at_medium=RSS&at_campaign=KARANGA england 2023-07-31 12:47:40
ニュース BBC News - Home UK weather: When will it stop raining and the summer improve? https://www.bbc.co.uk/news/uk-66362004?at_medium=RSS&at_campaign=KARANGA drier 2023-07-31 12:25:07
ニュース BBC News - Home Etsy accused of 'destroying' sellers by withholding money https://www.bbc.co.uk/news/business-66201042?at_medium=RSS&at_campaign=KARANGA takings 2023-07-31 12:51:50
ニュース BBC News - Home Jim Parker: Midsomer Murders composer dies aged 88 https://www.bbc.co.uk/news/entertainment-arts-66360435?at_medium=RSS&at_campaign=KARANGA foyle 2023-07-31 12:22:23
ニュース BBC News - Home Just Stop Oil trio deny Lord's Ashes Test trespass https://www.bbc.co.uk/news/uk-england-london-66359872?at_medium=RSS&at_campaign=KARANGA ashes 2023-07-31 12:28:58
ニュース BBC News - Home Red kite awareness campaign after reports of stolen food https://www.bbc.co.uk/news/uk-england-oxfordshire-66360726?at_medium=RSS&at_campaign=KARANGA poster 2023-07-31 12:24:35
ニュース BBC News - Home Harry Potter: Fans celebrate wizard's birthday https://www.bbc.co.uk/news/uk-england-66361496?at_medium=RSS&at_campaign=KARANGA favourite 2023-07-31 12:09:20
ニュース BBC News - Home Canada 0-4 Australia: Co-hosts keep Women's World Cup dream alive as Olympic champions go out https://www.bbc.co.uk/sport/football/66357325?at_medium=RSS&at_campaign=KARANGA Canada Australia Co hosts keep Women x s World Cup dream alive as Olympic champions go outCo hosts Australia keep their Fifa Women s World Cup hopes alive by reaching the second round at the expense of Olympic champions Canada 2023-07-31 12:24:55

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)