IT |
気になる、記になる… |
Catalyst、「AirPods Pro (第2世代)」向け衝撃吸収シリコンケースを発表 ー 予約受付中 |
https://taisy0.com/2023/03/01/169114.html
|
catalysta |
2023-03-01 11:56:37 |
IT |
気になる、記になる… |
ヤマダデンキのApple専用ローンにMac向け3年プランが登場 ー 30日間の100%買取保証キャンペーンも実施中 |
https://taisy0.com/2023/03/01/169112.html
|
apple |
2023-03-01 11:47:25 |
IT |
気になる、記になる… |
Twitter、本日19時頃より障害発生中 ー 最新の投稿を読み込めず |
https://taisy0.com/2023/03/01/169106.html
|
twitter |
2023-03-01 11:30:45 |
IT |
気になる、記になる… |
【セール】「ロマンシング サガ 2・3」など、スマホ向け「サガ」シリーズが最大70%オフに(3月31日まで) |
https://taisy0.com/2023/03/01/169103.html
|
開催 |
2023-03-01 11:18:16 |
IT |
気になる、記になる… |
ワイモバイル、SIM/eSIMを対象の条件で契約すると最大2万円相当のPayPayポイントが貰えるキャンペーンを開始 |
https://taisy0.com/2023/03/01/169100.html
|
simesim |
2023-03-01 11:06:18 |
IT |
ITmedia 総合記事一覧 |
[ITmedia ビジネスオンライン] HYBE JAPAN、平手友梨奈のWeverse公式コミュニティーを開設 世界市場に進出 |
https://www.itmedia.co.jp/business/articles/2303/01/news114.html
|
hybejapan |
2023-03-01 20:02:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia ビジネスオンライン] 日産、「ノート」「ノート オーラ」値上げ 5月から新価格 |
https://www.itmedia.co.jp/business/articles/2303/01/news184.html
|
itmedia |
2023-03-01 20:02:00 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
FXのデータをPythonで取得するために知っておきたい基本的なこと |
https://qiita.com/taka2_55/items/d60a37ad9ceb3bdbaf0d
|
alphavantage |
2023-03-01 20:19:47 |
js |
JavaScriptタグが付けられた新着投稿 - Qiita |
JavaScriptでプルダウンから値を取得する |
https://qiita.com/hukuryo/items/8945d484aeba6ccc6f2b
|
httpsi |
2023-03-01 20:41:45 |
Ruby |
Rubyタグが付けられた新着投稿 - Qiita |
Ruby countメソッドを使ったプログラムの作成 |
https://qiita.com/ta--i/items/546df74855b4c70dae6f
|
defarraycountnumscountn |
2023-03-01 20:35:31 |
Linux |
Ubuntuタグが付けられた新着投稿 - Qiita |
WSL2(Ubuntu)にDocker及びdocker-compose環境を構築する |
https://qiita.com/kotattsu3/items/139e958d02bb87277843
|
docker |
2023-03-01 20:05:29 |
Docker |
dockerタグが付けられた新着投稿 - Qiita |
【データサイエンスSQL100本ノック】20~30問 |
https://qiita.com/pon_kk24/items/7cfea6550edd4953c4fa
|
twitter |
2023-03-01 20:13:26 |
Docker |
dockerタグが付けられた新着投稿 - Qiita |
WSL2(Ubuntu)にDocker及びdocker-compose環境を構築する |
https://qiita.com/kotattsu3/items/139e958d02bb87277843
|
docker |
2023-03-01 20:05:29 |
Ruby |
Railsタグが付けられた新着投稿 - Qiita |
Ruby countメソッドを使ったプログラムの作成 |
https://qiita.com/ta--i/items/546df74855b4c70dae6f
|
defarraycountnumscountn |
2023-03-01 20:35:31 |
技術ブログ |
Developers.IO |
S3バケットへの送信元での「暗号化しない」という選択肢 |
https://dev.classmethod.jp/articles/s3-no-encrypt-select-sender-service/
|
amazons |
2023-03-01 11:03:09 |
海外TECH |
MakeUseOf |
What Is the Difference? Nvidia GeForce RTX 3060 vs. 3060 Ti |
https://www.makeuseof.com/what-is-the-difference-3060-vs-3060-ti/
|
tithey |
2023-03-01 11:56:18 |
海外TECH |
MakeUseOf |
What Are NFT Royalties, and How Can You Earn Them? |
https://www.makeuseof.com/what-are-nft-royalties-how-can-you-earn-them/
|
digital |
2023-03-01 11:30:18 |
海外TECH |
MakeUseOf |
Why Google Pays Apple Billions of Dollars Every Year |
https://www.makeuseof.com/why-google-pays-apple-billions-of-dollars/
|
hefty |
2023-03-01 11:15:17 |
海外TECH |
MakeUseOf |
9 New Features From Google's Android and Wear OS Spring Update |
https://www.makeuseof.com/android-wear-os-spring-update-new-features/
|
android |
2023-03-01 11:10:17 |
海外TECH |
MakeUseOf |
What Does Google Mean by "Pixel Value"? |
https://www.makeuseof.com/what-does-pixel-value-mean/
|
pixel |
2023-03-01 11:05:17 |
海外TECH |
DEV Community |
Making GraphQL Codegen Work For You: GraphQL Integration with React and TypeScript |
https://dev.to/novu/making-graphql-codegen-work-for-you-graphql-integration-with-react-and-typescript-3bbm
|
Making GraphQL Codegen Work For You GraphQL Integration with React and TypeScript TL DRIn this guide we ll be showing you how to use GraphQL alongside React and GraphQL Codegen to create a simple page that can pull data from an API and send emails We ll be using Novu as an open source notification system for developers that can send our emails after being passed through a form created within React IntroWe ve all been there you ve been coding away in React with Typescript enjoying type checking until it s time to time to integrate your application with an API And then all of your data types are wrong ending up with a ton of errors or just not working at all Thankfully integrating APIs doesn t need to be complicated with GraphQL It enables you to quickly get an API integrated without the hassle of a standard REST API thanks to tools like Codegen In this article I will demonstrate the problem that many developers face and how to improve the workflow when integrating your react app with a GraphQL API This tutorial assumes that you have been working with React before and want to improve so you already have your workstation set up What We Will Do Bootstrap a new Next js TypeScript projectInstall Apollo GraphQL and fetch data from a public APIShowcase why using GraphQL Codegen is a good ideaCreate a Next js API endpoint for sending emails with dataUse the Novu co platform for setting up and sending emails to a given emailIf you want to skip the writeup you can go to GitHub directly and look at the code Creating an Example Project with React and Next jsLearning is faster when you get your hands dirty so let s jump straight in We ll bootstrap a new React project using Next js with Typescript Next js is a full stack framework for React that allows us to quickly start up a web app Run the following command in your terminal to scaffold a new Next js project with Typescript yarn create next app typescriptIt will then prompt you for the name of the project Let s name it next typescript graphql integration so we know what we re working with and we ll leave anything else to default values While we re still in the terminal navigate to our newly created project and run it to make sure that the installation was successful cd next typescript graphql integrationyarn devThe output will be similar to this yarn devyarn run v next devready started server on url http localhost event compiled client and server successfully in ms modules From this we can determine that the page is available at localhost Opening the browser and checking the page will show the default Next js screen Install Dependencies amp Initialize Apollo ClientWe are now ready to install some packages We start by installing one of the most popular GraphQL clients Apollo Client Apollo is a tool that enables devs to utilize GraphQL APIs within almost any tech stack and integrates it within your UI Then we ll start doing some fetching from this public Rick amp Morty GraphQL API yarn add apollo client graphqlWhen that s done let s open up our code editor and initialize the Apollo Client When inspecting the folder you can see that it s a standard bare bones Next project with the following folder structure root next pages public stylesInside of app tsc we can start initializing our client by following the steps described by the official Apollo Client React docs We include the necessary imports and create the client then include it in our React app via ApolloProvider In the end the file should look something like this import styles globals css import type AppProps from next app import ApolloClient InMemoryCache ApolloProvider from apollo client const client new ApolloClient uri cache new InMemoryCache export default function App Component pageProps AppProps return lt ApolloProvider client gt lt Component pageProps gt lt ApolloProvider gt This is everything we need to initialize our brand new GraphQL client on the client side Let s continue with fetching some data the un safe way Fetching Data without Type CheckingNow that we have our project up and running it s time to add some data from our API If we want to get a list of characters from the API we need to run a query like so query characters results id name species The Apollo documentation will tell us to create the query document and then use it together with the useQuery hook provided by Apollo I ve deleted everything in index tsx and replaced it with the following import gql useQuery from apollo client import NextPage from next const GET CHARACTERS gql query characters results id name species const Home NextPage gt const loading data useQuery GET CHARACTERS return lt div gt lt main gt loading amp amp lt p gt Loading lt p gt data characters results map character gt lt p key character id gt character name lt p gt lt main gt lt div gt export default Home This is what it will look like so let s check back to our application Everything seems like it s good right What Went Wrong with GraphQL While our code may work as intended it s not exactly reliable There are two common errors we made here that we need to look at No GraphQL Type ValidationWe didn t add any type validation to our GraphQL calls This means if you request a field that doesn t exist in the schema you will get weird and hard to understand error messages Let s see what can happen if we change our project const GET CHARACTERS gql query characters results id name species notInSchema this will result in error Running this will give us an “Error Response not successful Received status code which doesn t tell you what went wrong at all becoming a huge time waster Considering that some queries and mutations might have a variety of variables fields and subfields this gets complex fast believe me I ve done this to my breaking point before So you should be ensuring that your GraphQL queries don t call for items not in the schema No Types In The ResponseWe also didn t include any form of autocomplete in our response so our code doesn t know what is supposed to be returned from our API We need to ensure that we validate the data we receive from our API to ensure our data is correct If we don t this can become a nightmare in the future Let s take a look at our code editor You should see a red line under the character variable with the following Typescript validation error So how do we fix this issue If we re just building something small we can create our own type like so type GetCharactersQueryResponse characters results Array lt id string name string species string gt And then passing it into our query hook const loading error data useQuery lt GetCharactersQueryResponse gt GET CHARACTERS This will give us type checking from Typescript and work just fine But this solution becomes a nightmare when return types become large or if you need to pass variables All of those are checked in the GraphQL API and will send you confusing errors that are hard to debug Fortunately there are some smart people who realized that all this information is already available inside GraphQL schemas amp can be used to generate this information for us Enter GraphQL Codegen What Is Graphql Codegen Graphql Codegen is a code generation library for GraphQL that enables developers to generate custom code It provides us developers with the ability to generate type definitions query builders documentation and more by analyzing our GraphQL schemas This makes it easier and faster to build GraphQL applications and reduces the time spent coding Additionally Graphql Codegen is also a type safe code generator This means that the generated code is checked for errors by the Graphql Codegen compiler before it is used in an application This ensures that any errors in the code are caught before they cause problems in production Plus it also provides developers with an easy way to manage GraphQL schemas It allows devs to easily add remove and update their schemas without any hassle This makes it much easier to keep your schemas up to date Setup and Configuring GraphQL CodegenBefore we can start using Graphql Codegen we ll need to configure it This process is relatively simple and can be done in a few steps The first step is installing GraphQL Codegen by running this command yarn add D graphql codegen cli graphql codegen typescript graphql codegen typescript graphql request graphql codegen typescript operations graphql codegen typescript react apolloThis will install the following packages as devDepencencies graphql codegen cli graphql codegen typescript graphql codegen typescript graphql request graphql codegen typescript operations graphql codegen typescript react apolloAfter installing we need to configure GraphQL Codegen I prefer to do this by adding a yml file to the root of our directory touch graphql config ymlOpen up the file and let s add the following configuration schema documents graphql graphql generates generated graphql ts plugins typescript typescript operations typescript react apolloThe configuration file does the following schema This points to our GraphQL endpoint for fetching the API schema map documents This tells GraphQL Codegen where to look for our schema filesgenerates This tells GraphQL Codegen where to create and store generated code plugins Specifies what GraphQL Codegen plugins to use To finalize the setup we also need to add the generation script to our package json name next typescript graphql integration version private true scripts dev next dev build next build start next start lint next lint generate graphql codegen config graphql config yml here dependencies apollo client next font types node types react types react dom eslint eslint config next graphql next react react dom typescript devDependencies graphql codegen cli graphql codegen typescript graphql codegen typescript graphql request graphql codegen typescript operations graphql codegen typescript react apollo If you run yarn generate now you will see an error output like this yarn generateyarn run v graphql codegen config graphql config yml node ExperimentalWarning stream web is an experimental feature This feature could change at any time Use node trace warnings to show where the warning was created Parse Configuration❯Generate outputsParse ConfigurationGenerate outputs ❯Generate to generated graphql ts Load GraphQL schemas Unable to find any GraphQL type definitions for the f… graphql graphql Generateerror Command failed with exit code info Visit for documentation about this command This means the setup is complete and we are ready to add some schema files Adding Our Schema FileStarting off create a folder in the root of the directory called graphql and inside create a file called get characters query graphql We already told Codegen where to look for our schemas but the second filename is up to you The folder structure now looks like this root next pages public styles graphql here Then inside of the file get characters query graphql add the query that we previously used but without wrapping it in a gql template string like this query GetCharacters characters results id name species And then re run the generate script and you will see the following yarn generateyarn run v graphql codegen config graphql config yml node ExperimentalWarning stream web is an experimental feature This feature could change at any time Use node trace warnings to show where the warning was created Parse Configuration❯Generate outputsParse ConfigurationGenerate outputsDone in s Congratulations We are almost done Now check root and you will notice that the script has created a new folder called generated with a file called graphql ts This is as we configured in the graphql config file root next pages public styles graphql generated here If you inspect that file you can see that we have generated a bunch of types pulled from the API and generated custom React hooks for the query that we authored in get characters query graphql GraphQL Codegen in ActionNow that you have Graphql Codegen set up and configured you can start using it in your React application Let s modify index tsxto the following import GetCharactersDocument GetCharactersQuery GetCharactersQueryVariables from generated graphql import useQuery from apollo client import NextPage from next const Home NextPage gt const loading data useQuery lt GetCharactersQuery GetCharactersQueryVariables gt GetCharactersDocument const characters data characters results return lt div gt lt main gt loading amp amp lt p gt Loading lt p gt characters amp amp characters map character index gt lt p key character id index gt character name No name something is wrong lt p gt lt main gt lt div gt export default Home And now our data is type safe and validated If there was something wrong within the query that didn t match the API it would have thrown an error during generation Now inside our component we now have fully typed data which can be demonstrated by hovering over character But where are the custom hooks Let s take it one step further and use the typescript react apollo plugin we told GraphQL Codegen to use This will make our code super clean Using Generated End To End Type Safe Apollo HooksLet s clean up our code a little bit to something like this import NextPage from next import useGetCharactersQuery from generated graphql const Home NextPage gt This hook is validated towards the API amp will infer types and throw you type errors if you have not provided the right variables const loading data useGetCharactersQuery const characters data characters results return lt div gt lt main gt loading amp amp lt p gt Loading lt p gt characters amp amp characters map character index gt lt p key character id index gt character name No name something is wrong lt p gt lt main gt lt div gt export default Home Look at how neat and clean that is And it s still typed too For this project to continue API integration all developers need to do is add new files into the graphql folder and run yarn generate before restarting the dev server Then everything gets generated automatically One more check to see if it works Don t forget to start your development server if you stopped it Obviously this is a very small app so far Even so I think I have been able to demonstrate that even at this scale GraphQL Codegen is a very valuable tool Best Practices for GraphQL CodegenThere are some best practices that developers should follow when using GraphQL Codegen First it is important to keep your GraphQL Codegen configuration file up to date This will ensure that the generated code is always accurate It s also important to make sure your configuration file is well structured and easy to understand This makes it easier for changes in the future Second for production projects it is important to test your generated code This ensures the code is working as expected and any errors are caught before they cause problems in production Adding In New Functionality With NovuShowing data is pretty neat but what if we could aggregate that data and send it to our users For this we can use Novu Novu is an open source notification infrastructure for developers They make it possible to send notifications though a unified API With their platform it s possible to bundle notification sending into “triggers Managing all notification handlers normally becomes a big chore for us developers as our applications become more complex Only handling code for email notifications might be doable in a small team but adding in SMS and push notifications quickly becomes a time drain to get up and running Which is exactly what Novu intends to help with How to Get Started with NovuThe quickest way to get started with Novu is by signing up for their cloud platform Its totally free and with a generous free tier of k events per month you ll have plenty to work with There is also the option to self host the platform on your own servers but will require extra work For this tutorial we ll be going with the simpler option through Novu s cloud platform Step Sign UpAfter signing up they will ask for an organization name and then you will be greeted with a welcome screen Step Connect the Novu Email ProviderFor most providers Novu sits between them and your application That means if you are sending an SMS to your user Novu doesn t send that it s done by your provider However to get started I recommend using their built in email provider It lets you send up to emails which is plenty for small applications like ours The emails will come from no reply novu co and the sending will be the organization name you picked earlier Step Create a New Notification TriggerWe also need to define a trigger by going to Notifications in the cloud panel Press New and add our trigger This is what our settings should look like but feel free to switch it up if you want Then head into the Workflow Editor and configure what happens when triggered Add an email field and then enter the email editor to edit the template or any other settings you d like to add Email templates often inject variables with VARIABLE This is how we ll inject the request payload into our email template Apply variables in the editor and you ll see them show up in the variables box In this case name and species will need to be present in the payload we send to the API This is what our template should look like Press update and see that the payload variables show up in the variables box That s all we need for now Let s continue with writing the components and wire everything together 🪡 Step Create the React Form ComponentLet s jump back into the code and create a form to take our users email and store it locally We will create a folder in root called components with a file called EmailForm tsx import FormEvent useState from react const EmailForm gt const success setSuccess useState lt boolean gt false const email setEmail useState lt string gt const onSubmit e FormEvent lt HTMLFormElement gt gt e preventDefault send the email to user return lt div gt lt p gt Send me random character lt p gt lt form onSubmit onSubmit gt lt input type text value email onChange e gt setEmail e target value gt lt button type submit gt Send lt button gt lt form gt lt div gt export default EmailForm With our form set up and ready to go we can connect it to the Novu API Step Install Novu clientThe easiest way to interact with the Novu API is to install their client package We can install the novu node package from npm by running yarn add novu node After this create a folder in root called lib which will hold the logic for interacting with the Novu API We ll call it novu ts and it s going to export an async function which we can then re use Then we ll head into the Novu Dashboard and grab this Node js code snippet import Novu from novu node const novu new Novu lt API KEY gt novu trigger randm random email to subscriberId lt REPLACE WITH DATA gt email lt REPLACE WITH DATA gt payload name lt REPLACE WITH DATA gt species lt REPLACE WITH DATA gt Pretty neat They ve done most of the work for us ️ Novu adds the payload variables and everything saving us time from going to the docs Now back to the editor lib novu tsimport Novu from novu node const novu new Novu lt API KEY gt type Payload name string species string export const sendEmail async email string payload Payload gt if email throw new Error No email await novu trigger lt REPLACE WITH TRIGGER ID gt to email subscriberId email payload This is how the payload should look in the new Payload type which will be sent to Novu and injected into our email template Replace API KEY and TRIGGER ID with our variables and we should be good to go Note Before pushing this to git please make sure you re using environmental variables not what s shown in this tutorial Step Create a Next js API EndpointNext js is a full stack framework for React and they make it easy for us to create full stack apps One of the most notable features is that we can create API endpoints on our server These are then hidden from the client browser for extra security The way these works is by adding a new file to our pages folder and using the folder structure to define our endpoints The below structure will create an endpoint at send email root next pages api hello ts send email ts public styles graphql generatedAnd here s the code for the handler where we get our parameters from the request import sendEmail from lib novu import NextApiRequest NextApiResponse from next const handler async req NextApiRequest res NextApiResponse gt we are only handling post requests if req method POST try const email name species JSON parse req body if email name species return bad request status res status end return await sendEmail email name species res status end catch error Just response internal server error res status end export default handler This handler will Look at any incoming POST requests to the endpoint Check if the body of the request has the necessary params Send the email if everything is correct or return an error if something is wrongAnd that s all we need for our backend So let s add in the client side Step Add Our Email FunctionalityNow that we re back at the client side let s add in the rest of the functionality We ll start at the top of the tree in index tsx and import our EmailForm tsx component like so import NextPage from next import useGetCharactersQuery from generated graphql import EmailForm from components EmailForm const Home NextPage gt const loading data useGetCharactersQuery const characters data characters results return lt div gt lt main gt loading amp amp lt p gt Loading lt p gt characters amp amp lt div gt lt EmailForm characters gt characters map character index gt lt p key character id index gt character name No name something is wrong lt p gt lt div gt lt main gt lt div gt export default Home That was simple Let s finish the implementation in EmailForm tsx import Character from generated graphql import FormEvent useState from react type Props characters Character null null undefined const EmailForm React FC lt Props gt characters gt const email setEmail useState lt string gt const onSubmit async e FormEvent lt HTMLFormElement gt gt e preventDefault if characters amp amp characters length gt Get random character from the array const random Math floor Math random characters length const randomCharacter characters random Make send email request to api send email fetch http localhost api send email method POST body JSON stringify email name randomCharacter name species randomCharacter species return lt div gt lt p gt Send me random character lt p gt lt form onSubmit onSubmit gt lt input type text value email onChange e gt setEmail e target value gt lt button type submit gt Send lt button gt lt form gt lt div gt export default EmailForm This form component will Render a text input for email and store the data in local storageSubmit the data when the button has been pressedMakes a request to our API which sends a request to Novu co which in turn will send en email to the given email addressAnd that s it Now we need to test it out Step Send Emails If we take a look in the browser at this point it should look like this It s not pretty but it s functional Enter your email and see if it shows up in your inbox Wrapping It UpIntegrating APIs into a project can be difficult but it doesn t have to be And with GraphQL it s easier than ever before It allows you to set up API integrations with ease and can pair with tools like GraphQL Codegen to automate some of the hassles Paired with a powerful notification platform like Novu you can easily get a project up and running in no time with notifications and communication options at your disposal And the best part You can do it all for free No buy in required I know I ll be using Novu in my future what about you Full source code can be found here |
2023-03-01 11:09:45 |
Apple |
AppleInsider - Frontpage News |
iPhone Clean Energy Charging - everything you need to know |
https://appleinsider.com/articles/23/03/01/iphone-clean-energy-charging---everything-you-need-to-know?utm_medium=rss
|
iPhone Clean Energy Charging everything you need to knowApple quietly included a feature called Clean Energy Charging in iOS and turned it on by default Here s what you need to know about the environmentally conscious feature Clean Energy Charging helps reduce a user s carbon footprintApple was vocal about Clean Energy Charging when it announced iOS in September It didn t launch to the public until October with iOS and it seemed the change went by without many users noticing ーuntil a recent social media storm Read more |
2023-03-01 12:00:02 |
Apple |
AppleInsider - Frontpage News |
iPhone 14 Plus is still a bust but Pro demand still very strong |
https://appleinsider.com/articles/23/03/01/iphone-14-plus-is-still-a-bust-but-pro-demand-still-very-strong?utm_medium=rss
|
iPhone Plus is still a bust but Pro demand still very strongInvestment analyst firm JP Morgan reports that overall the iPhone family is selling better at this stage than its predecessors with signs of more users than normal for January switching from Android JP Morgan recently cut its AAPL target price because of tough holiday earnings At the time its analysts also said that we start to see signs of the product cycle tailwinds beginning to fade iPhone and Apple Watch in particular Now in a new note to investors seen by AppleInsider the firm reports that while demand for the iPhone range is declining its market share is seasonally higher than normal The conclusion is based on surveys from Wave Research into sales across US carriers Read more |
2023-03-01 11:43:13 |
Apple |
AppleInsider - Frontpage News |
How to quit all Mac apps at once in macOS Ventura |
https://appleinsider.com/inside/macos-ventura/tips/how-to-quit-all-mac-apps-at-once-in-macos-ventura?utm_medium=rss
|
How to quit all Mac apps at once in macOS VenturaWhen working on your Mac for a long time you may have many apps open and it may become a hassle to close every one of them individually Here is how to close all your open apps at once You can shut down your Mac to close all you apps but if you re switching from one major task to another you won t want to have to repeatedly restart your Mac You can use the Bunch app ーwhich is free ーto write a list of all the apps you want to close and open with one click Or if you don t want to download a third party app just for this you can still quit apps by using Apple s app switcher Read more |
2023-03-01 11:38:52 |
海外TECH |
Engadget |
Space organizations want the moon to have its own time zone |
https://www.engadget.com/moon-own-time-zone-esa-113547009.html?src=rss
|
Space organizations want the moon to have its own time zoneThere s been a resurgence of interest in the moon now that we re getting closer to re establishing a foothold on the celestial body Space agencies and private companies around the world have been scheduling their own lunar missions to take place over the coming years and it will be quite complicated having to coordinate with each other when they use different time zones During a meeting at the European Space Agency s ESTEC technology center in the Netherlands last year space organizations talked about the quot importance and urgency of defining a common lunar reference time quot In a new announcement ESA navigation system engineer Pietro Giordano said a quot joint international effort is now being launched towards achieving this quot At the moment different space organizations still use their own time zones for their onboard chronometers and their two way communications systems The ESA said doing so quot will not be sustainable quot in the new era of lunar exploration Missions from different countries will be doing joint observations and they may have to communicate with each other even if they re not directly working together if they re on the moon at the same time nbsp Deciding on and keeping lunar time won t be easy though and they will come with a unique set of challenges As the ESA notes quot accurate navigation demands rigorous timekeeping quot which is why one of the topics the international group of space organizations will have to discuss is if there should be a single organization responsible for maintaining the moon s time zone Further they ll have to decide whether to keep lunar time synchronized with Earth s or not because clocks on the moon run faster based on the satellite s position While they have a lot of factors to consider whatever they come up with will have to practical for astronauts orbiting or stepping on the lunar surface in the end nbsp Bernhard Hufenbach a member of the ESA s Directorate of Human and Robotic Exploration s Moonlight Management Team said quot This will be quite a challenge on a planetary surface where in the equatorial region each day is days long including freezing fortnight long lunar nights with the whole of Earth just a small blue circle in the dark sky But having established a working time system for the moon we can go on to do the same for other planetary destinations quot How do we tell the time on the Moon A new era of space exploration needs a shared clock We are working with NASA amp other international partners towards a common timing system allowing lunar missions to synch up interoperate amp self navigate pic twitter com wubLGvLvGーESA esa February This article originally appeared on Engadget at |
2023-03-01 11:35:47 |
海外TECH |
Engadget |
TikTok will automatically limit screen time for teens |
https://www.engadget.com/tiktok-will-automatically-limit-screen-time-for-teens-110056722.html?src=rss
|
TikTok will automatically limit screen time for teensTikTok is introducing new settings that are meant to reduce how much time teens are spending in the app In an update the company says it will automatically default teens under the age of to a daily screen time limit of minutes With the change teens will still be able to bypass the daily limit but they ll be required to enter a passcode “requiring them to make an active decision to extend that time the company says Additionally if teens opt to turn off the screen time limit altogether TikTok will further prompt them to set a limit if they spend more than minutes in the app The company is also adding new parental control features via the app s “Family Pairing feature which allows parents to monitor their children s activity on TikTok Parents will be able to set their own custom screen time limits and view a dashboard that details stats about their child s time in the app like how often they open it and what times of the day they use it most Parents can also set a schedule for when their children can receive notifications and choose to filter topics they don t want to appear in their For You feeds The update comes as lawmakers in the United States have renewed their efforts to ban TikTok entirely In addition to national security concerns Congress has also criticized the company for not doing enough to protect its youngest users This article originally appeared on Engadget at |
2023-03-01 11:00:56 |
海外TECH |
CodeProject Latest Articles |
Hardware review: Logitech ERGO M575 Trackball and TESmart 4K 60Hz 4:4:4 KVM switch |
https://www.codeproject.com/Articles/5355358/Hardware-review-Logitech-ERGO-M575-Trackball-and-T
|
switch |
2023-03-01 11:35:00 |
海外TECH |
CodeProject Latest Articles |
My Works for YDock |
https://www.codeproject.com/Articles/5355820/My-Works-for-YDock
|
toolkit |
2023-03-01 11:20:00 |
金融 |
JPX マーケットニュース |
[東証]監理銘柄(確認中)の指定:日本エス・エイチ・エル(株) |
https://www.jpx.co.jp/news/1023/20230301-11.html
|
日本エス |
2023-03-01 20:10:00 |
金融 |
金融庁ホームページ |
非常勤職員を募集しています。(金融機関のサイバーセキュリティのモニタリングに関する企画・調整業務に従事する専門調査員) |
https://www.fsa.go.jp/common/recruit/r4/souri-19/souri-19.html
|
専門調査員 |
2023-03-01 11:30:00 |
ニュース |
BBC News - Home |
Constance Marten and Mark Gordon arrest: Search for baby continues |
https://www.bbc.co.uk/news/uk-64808412?at_medium=RSS&at_campaign=KARANGA
|
gross |
2023-03-01 11:20:52 |
ニュース |
BBC News - Home |
Covid probably came from Chinese government lab, says FBI |
https://www.bbc.co.uk/news/world-us-canada-64806903?at_medium=RSS&at_campaign=KARANGA
|
conclusions |
2023-03-01 11:36:32 |
ニュース |
BBC News - Home |
Twitter goes down with users unable to view tweets |
https://www.bbc.co.uk/news/technology-64811286?at_medium=RSS&at_campaign=KARANGA
|
company |
2023-03-01 11:55:21 |
ニュース |
BBC News - Home |
Mel B: I wouldn't call police over domestic abuse |
https://www.bbc.co.uk/news/uk-64803529?at_medium=RSS&at_campaign=KARANGA
|
police |
2023-03-01 11:06:28 |
ニュース |
BBC News - Home |
Just Fontaine: Former France striker and World Cup record holder dies aged 89 |
https://www.bbc.co.uk/sport/football/64808839?at_medium=RSS&at_campaign=KARANGA
|
world |
2023-03-01 11:20:57 |
ニュース |
BBC News - Home |
St David: Ten things to know about the patron saint of Wales |
https://www.bbc.co.uk/news/uk-wales-51649367?at_medium=RSS&at_campaign=KARANGA
|
teetotal |
2023-03-01 11:01:26 |
ニュース |
BBC News - Home |
Covid origin: Why the Wuhan lab-leak theory is being taken seriously |
https://www.bbc.co.uk/news/world-asia-china-57268111?at_medium=RSS&at_campaign=KARANGA
|
chinese |
2023-03-01 11:12:29 |
ニュース |
BBC News - Home |
Charlotte Bankes fails to defend snowboard cross world title |
https://www.bbc.co.uk/sport/winter-sports/64809127?at_medium=RSS&at_campaign=KARANGA
|
bakuriani |
2023-03-01 11:30:13 |
ビジネス |
東洋経済オンライン |
フォード、米本土に「リン酸鉄系」電池工場を建設 中国CATLが関連技術や生産サポートを提供へ | 「財新」中国Biz&Tech | 東洋経済オンライン |
https://toyokeizai.net/articles/-/654782?utm_source=rss&utm_medium=http&utm_campaign=link_back
|
biztech |
2023-03-01 21:00:00 |
IT |
週刊アスキー |
『零 ~月蝕の仮面~』発売直前生放送配信決定!さらに衣装動画も公開 |
https://weekly.ascii.jp/elem/000/004/126/4126929/
|
発売予定 |
2023-03-01 20:10:00 |
コメント
コメントを投稿