IT |
ITmedia 総合記事一覧 |
[ITmedia News] 水拭きもできる「ルンバ」登場、掃除中に“変形”、カーペットを濡らさない |
https://www.itmedia.co.jp/news/articles/2211/01/news190.html
|
itmedia |
2022-11-01 20:23:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia News] 「au通信障害」がTwitterトレンド入り 「“瞬断”はあったがすでに回復済み」とKDDI |
https://www.itmedia.co.jp/news/articles/2211/01/news189.html
|
itmedia |
2022-11-01 20:10:00 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
Laravel sailでPythonを使う |
https://qiita.com/yuta0717/items/efbd7387e226bea31050
|
phplaravel |
2022-11-01 20:14:33 |
js |
JavaScriptタグが付けられた新着投稿 - Qiita |
TurboLinksでWindowのLoadイベントが発火できるようにする |
https://qiita.com/pyon_kiti_jp/items/8dd1e94ba13003cb4520
|
links |
2022-11-01 20:24:16 |
AWS |
AWSタグが付けられた新着投稿 - Qiita |
【Terraform】複数リソースを生成する方法(count, for_each) |
https://qiita.com/YSasago/items/1a3cdd6acbd52a32b7a4
|
count |
2022-11-01 20:58:52 |
AWS |
AWSタグが付けられた新着投稿 - Qiita |
AWS CLIのインストールと初期設定 |
https://qiita.com/nkojima/items/19e4a098aaf9205115c0
|
awscli |
2022-11-01 20:25:29 |
Docker |
dockerタグが付けられた新着投稿 - Qiita |
`docker-compose up`で"Attaching to"と表示されたままになる時はコンテナの起動方法が異なるかも。profilesでコンテナの属性を設定する。 |
https://qiita.com/wallkickers/items/8c6a0d81de8355bb2fa2
|
docker |
2022-11-01 20:07:04 |
Ruby |
Railsタグが付けられた新着投稿 - Qiita |
TurboLinksでWindowのLoadイベントが発火できるようにする |
https://qiita.com/pyon_kiti_jp/items/8dd1e94ba13003cb4520
|
links |
2022-11-01 20:24:16 |
海外TECH |
MakeUseOf |
What the Numbers on Tires Mean and Why It Matters |
https://www.makeuseof.com/what-the-numbers-on-tires-mean/
|
mattersthey |
2022-11-01 11:45:15 |
海外TECH |
MakeUseOf |
Reddit's NFT Avatars Explained: Why Are They So Popular? |
https://www.makeuseof.com/reddits-nft-avatars-explained/
|
avatars |
2022-11-01 11:30:14 |
海外TECH |
MakeUseOf |
Safeguard Your Home With Reolink 4K Camera at 25% Off |
https://www.makeuseof.com/reolink-4k-camera-deal/
|
offreolink |
2022-11-01 11:20:15 |
海外TECH |
MakeUseOf |
How Elon Musk Bought Twitter: The Timeline of Events |
https://www.makeuseof.com/how-elon-musk-bought-twitter-timeline/
|
quick |
2022-11-01 11:17:04 |
海外TECH |
MakeUseOf |
Everything You Need to Know About HDMI Alt Mode and USB Type-C |
https://www.makeuseof.com/tag/everything-need-know-hdmi-alt-mode-usb-type-c/
|
Everything You Need to Know About HDMI Alt Mode and USB Type CThe new HDMI Alt Mode standard will allow phones and tablets to stream directly to monitors and TVs using USB C to HDMI cables Here s all you need to know about it |
2022-11-01 11:03:06 |
海外TECH |
DEV Community |
Better Fastly API clients with OpenAPI Generator |
https://dev.to/fastly/better-fastly-api-clients-with-openapi-generator-3lno
|
Better Fastly API clients with OpenAPI GeneratorThe Fastly API is huge We have lots of customers who want to interact with it using their chosen programming language but our small set of manually maintained clients was not sufficient to handle the job of our ever evolving API We needed a way to scale up our API client support and OpenAPI was the answer We describe our API using the OpenAPI specification which defines a standard language agnostic interface The use of OpenAPI enables us to programmatically interact with the API metadata to produce content code examples tools and other valuable resources Here is an example of one of our API endpoints It highlights how we define a GET request and what a successful OK response looks like info title Backend description A backend is a server identified by IP address or hostname version externalDocs url servers url paths service service id version version id backend parameters ref service yaml components parameters service id ref version yaml components parameters version id get summary List backends description List all backends for a particular service and version operationId list backends responses description OK content application json schema type array items ref components schemas backend response examples body value ref components examples backend response HINT To reduce duplication we often put common parameters and values into external files that can be referenced separately we also do this for large nested sections that can otherwise make it difficult to focus on the critical points of an API s specification see ref The problem endpoints languagesIn order to enable customers to access our API within a programmatic environment we provide API clients in multiple languages Over time we produced multiple API clients all varying in their level of API coverage code quality and consistency There were multiple factors that meant our API clients didn t all receive the care and attention they deserved and so would suffer from code bugs and generally be out of date with our API For example we needed Engineers who knew multiple languages and had enough experience with them to not only be able to write code in these languages but to write idiomatic code The resources to continually revisit clients when the API changes as well as the sheer amount of work to support such a large number of endpoints The planIn the Developer Relations team took ownership of the API clients and we began devising a plan to make them more complete consistent and where possible idiomatic This wouldn t be achievable by maintaining all the clients as separate projects so the primary focus was to create and maintain common tooling to enable a broad stable of API clients to keep up with our API as it evolves We also aimed to allow our Fastly co workers to easily contribute to the clients when an API changes avoiding a DevRel having to try and implement all API changes into the clients and b other teams having to learn different standards and structures for a bunch of different API clients in order to ship a feature neither of which would be scalable The solution OpenAPI GeneratorTo achieve these goals we investigated various options and ultimately decided on using a community driven fork of the official Swagger CodeGen project OpenAPI Generator OAG OAG is a template driven engine that can generate documentation API clients and server stubs in different languages by parsing your OpenAPI specification How OAG worksOAG is a Java project that uses Mustache templates to configure each supported programming language It provides a CLI openapi generator cli that will download the appropriate JAR file and invoke the java executable to run OAG To produce a new API client we pass openapi generator cli our OpenAPI specification tell it what language we want to use and where to output the API client code Here is a snippet from our Makefile that uses Docker to help get the Java CLI tool configured correctly LOCAL ROOT localOPENAPI GENERATOR CLI TAG v OAPI GENERATOR CLI docker run rm v PWD LOCAL ROOT openapitools openapi generator cli OPENAPI GENERATOR CLI TAG OAPI GENERATOR CLI generate global property apiTests GENERATE TESTS API modelTests GENERATE TESTS MODEL apiDocs GENERATE DOCS API modelDocs GENERATE DOCS MODEL i LOCAL ROOT BUILT SCHEMAS DIR COLLECTION g GENERATOR t LOCAL ROOT TEMPLATES DIR TEMPLATE c LOCAL ROOT TEMPLATES DIR TEMPLATE yaml o LOCAL ROOT TEMPLATE if COLLECTION NAME fastly COLLECTION NAME gt TEMPLATE tmp COLLECTION NAME log gt TEMPLATE tmp COLLECTION NAME err log Why it s a good choiceUnlike most other tools we investigated OAG had good support for multiple languages while also supporting the OpenAPI x specification which is the major version our own API specification was written in most other open source tools at the time only supported x OAG is also a very flexible tool allowing us to control various aspects of the generated code as well as execute post processors and the ability to define custom generator templates if none of the built in templates fit our requirements What languages we chose and whyPrior to this initiative we had five API clients so it was important that whatever process we came up with would support at least Ruby Python PHP Perl and Go This is our hand coded Go client the OAG version is still in the works On top of that list we also wanted to produce greenfield JavaScript and Rust clients as these are popular languages our customers are using Although OAG was doing the hard work of generating API clients for lots of different languages and keeping them up to date with our API specifications as you ll see this wasn t a panacea Difficulties and solutionsThere were a few issues we encountered The first was we needed a custom build process to manage a large number of OpenAPI specification files at the time we had approximately and it was growing The openapi generator cli tool could only process one specification file at a time which meant we needed to first aggregate our specifications into a single file with the help of redocly To ensure we would be able to run the code generation process within our Continuous Integration CI pipeline we needed to use a Dockerised version of openapi generator cli the coordination of which was a complex process See the next section on how we auto regenerate clients on spec change Another challenge we encountered was the quality of the community driven language templates For the most part they worked but they didn t appear to be well maintained over time nor did every feature in our OpenAPI specification have a corresponding implementation in the language templates In some cases the language templates didn t support the latest programming language version and the generated documentation wasn t as good as we needed it to be Additionally the quality of our OpenAPI specification files would cause problems in the generator by either triggering runtime errors in the underlying Java parser or in the generated code itself due to incompatibility with the language templates Each of these issues would result in hard to debug compilation errors within the code generation pipeline and so we would have to figure out which of the three potential layers the issue was stemming from The Fastly OpenAPI specification documents The openapi generator mustache templates The openapi generator language parsers written in Java Sometimes we would tweak the OpenAPI specification such that the generator s language parser would take a code path that didn t trigger a Java error while solving issues with the language templates would mean having to manually copy the source templates and modify them to suit our needs this was made possible thanks to OAG supporting custom template files Essentially we had to iterate on both ends of the integration a bit like trying to fit a square peg into a round hole then gradually changing the shape of both the peg and the hole until they fit Whenever possible we would push fixes upstream to the open source openapi generator project so the wider community could benefit This was our small way to say thank you to those who came before us and who provided us with these great tools to begin with We also did a lot of work to restructure the generated documentation which to be fair was already thousands of times more detailed than what we had in our original hand coded API clients to make it much easier for users to consume and understand the API client interface In some cases we were unable to resolve the incompatibility so to help unblock ourselves we implemented a custom OpenAPI extension that integrates with our CI pipeline and enables us to exclude API endpoints at a very granular level by specifying if the exclusion should be for all endpoints within a specification file or a specific sub section We can also exclude all clients or just those for specific languages Examples of this look likex fastly preprocess exclude api client exclude all clientsx fastly preprocess exclude fastly rust exclude the rust client fastly js exclude the javascript client Alpha releasesThe next step after successfully generating an API client was to push the code to the relevant public GitHub repository and then publish the code to its module registry e g crates io for Rust npmjs com for JavaScript pypi org for Python etc We selected a target group of customers and internal stakeholders to help test out the new API clients and report any bugs in the code invalid documentation or missing functionality There were a few minor issues reported but otherwise the generated API clients were working pretty well Auto regenerating the clients on spec changeThe last piece of the puzzle was the ability to automatically regenerate an API client when any OpenAPI specification files were modified We achieved this by adding two new CI pipeline flows across two separate repositories that would coordinate with each other At a high level this looked like HINT We use GitHub Actions for our CI CD You can learn more about it by reading our blog post “How Fastly deploys Gatsby CMS websites to GCS using GitHub Actions We wrote a CI job within the GitHub repository containing our OpenAPI specification files That job runs whenever changes are merged into the mainline branch and starts by validating and combining the specs Of course when the API definition changes it makes sense to regenerate all the API clients not just because we want to keep our public clients up to date but also because as part of reviewing open PRs it s great to be able to grab a client and use it to actually test out your new API before we integrate its definition into our official OpenAPI spec GitHub Actions turns out to have an incredibly useful hook called workflow dispatch which allows a change in one repo to trigger an action in a different repo We define a step that uses a conditional check to prevent it from being executed if there were no specification changes otherwise it triggers a workflow file within the GitHub repository that contains our API client generator logic build process The CI job defined in the API client generator repo is configured with the workflow dispatch event It receives the branch and commit SHA from the OpenAPI specification repo and it posts status updates back to the OpenAPI repo informing it of the build progress The next step in the API client generator CI job checks out the appropriate branch of the OpenAPI specification repo and uses it to build all the API clients Finally the CI job sends a status update to the OpenAPI specification repo letting it know where the generated API clients were uploaded to ConclusionAuto generating our API clients has been a long project The work started with the initial move to document our API using OpenAPI specifications This enabled us to make a much better API reference on our Developer Hub that consumes those specification files and produces content from them The code generation itself hasn t been easy we ve had to balance the complexity of coordinating changes across multiple repositories while handling errors over multiple layers and producing API clients that are not only idiomatic to the language they re built in but also correct and accessible That said for us this was a task that we needed to take to ensure we were providing our customers with the best possible tools and experience and enabling them to interact with the Fastly platform more efficiently We re now able to display code examples for each supported language in our API documentation making it easy for customers to get started using our APIs Any time the API definition is improved we end up improving the quality of the API documentation Lastly this work has encouraged our own developers to engage with the API definition Take a look at the clients and let us know what you think We love hearing how customers are using our tools and our platform |
2022-11-01 11:39:39 |
Apple |
AppleInsider - Frontpage News |
Daily deals Nov. 1: $399 Amazon 50-inch Fire TV, $249 Bose QuietComfort 45 headphones, $40 Ring Video Doorbell, more |
https://appleinsider.com/articles/22/11/01/daily-deals-nov-1-399-amazon-50-inch-fire-tv-249-bose-quietcomfort-45-headphones-40-ring-video-doorbell-more?utm_medium=rss
|
Daily deals Nov Amazon inch Fire TV Bose QuietComfort headphones Ring Video Doorbell moreTuesday s best deals include a inch LG Curved UltraWide monitor TB of portable Samsung storage for refurbished iMacs from and much more Best deals for November AppleInsider checks online stores daily to uncover discounts and offers on hardware and other products including Apple devices smart TVs accessories and other items The best offers are compiled into our regular list for our readers to use and save money Read more |
2022-11-01 11:29:34 |
海外TECH |
Engadget |
The Morning After: Trying out the Meta Quest Pro |
https://www.engadget.com/the-morning-after-trying-out-the-meta-quest-pro-111518757.html?src=rss
|
The Morning After Trying out the Meta Quest ProMeta has spent the GDP of a small country trying to make the metaverse a thing and now we get to see the latest device designed to take us there The Meta Quest Pro is a flagship VR headset that should offer the best experience Mark Zuckerberg s money can buy And our Sam Rutherford has spent plenty of time with one and is full of praise for it Rutherford lauded the comfort the design the power and pretty much everything else about it at least on a hardware level The sting of course is that fancy hardware doesn t mean much if there isn t compelling software to back it up And while there are some cool new apps able to take advantage of the Pro s more muscular performance it s still a pretty thin selection As someone who would love to spend more time in VR but can t find a headset that offers the right combination of eye and neck comfort I m excited to try the Pro But like many people I ll wait a year or two before investing in one lest I wind up with a very pretty very expensive piece of furniture gathering dust on my side table Dan CooperThe biggest stories you might have missedThe best robot vacuums for The best webcams for Bose s QuietComfort headphones are off right nowHP Elite Dragonfly Chromebook review The best of ChromeOS but not worth the priceWho wants or needs a luxury Chromebook Nathan IngrahamA luxury Chromebook has always been a bit of a paradox because Chrome is designed to work on the dirtiest of dirt cheap hardware HP s Elite Dragonfly Chromebook fits the category however with a base model costing more than a grand and our review model topping Naturally our Chromebook expert Nathan Ingraham put it through its paces and had plenty of nice things to say about it Sadly no matter how nice it is it s still plus dollars for a Chromebook Continue Reading UK police fail to use facial recognition ethically and legally study findsThe process isn t transparent with a massive accountability gap The UK has been playing around with live facial recognition technology LFR for several years but not in a way that s ethical or legal That s the conclusion made by University of Cambridge researchers after analyzing its use by police forces in London and South Wales The findings published in a new study said key information about how data is used has been “kept from view leaving unanswered questions around if the technology is used as a cover to justify racial profiling Not to mention its overall efficacy which third party experts say is far lower than the forces themselves like to boast about Continue Reading Bizarre Instagram outage left some thinking they were bannedUsers also saw drops in follower counts and disrupted feeds NurPhoto via Getty ImagesAn Instagram bug caused users to receive notices their accounts were suspended without cause The issue also saw individual follower counts fall as well as disruptions to the platform s main image feed Around eight hours later Instagram said it had fixed the bug but declined to elaborate on what caused it It s the second high profile service disruption to the image sharing network in a month and another sign not all is well inside Meta s gilded walls Continue Reading FTC says ed tech company Chegg exposed data belonging to million usersIncluding students religions sexual orientations and their parental income ranges Education provider Chegg is in the FTC s sights after it exposed the personal information of more than million users Officials have filed a complaint accusing the company of treating private data “carelessly That included letting employees access databases with a single sign in storing data in plain text and using outdated password encryption Chegg has already responded to the complaint saying it takes its obligations seriously and will fully comply with the FTC s order when it s issued Continue Reading |
2022-11-01 11:15:18 |
ラズパイ |
Raspberry Pi |
Non-formal learning activities: What do we know and how do we apply it to computing? |
https://www.raspberrypi.org/blog/gender-balance-in-computing-non-formal-learning/
|
Non formal learning activities What do we know and how do we apply it to computing At the Raspberry Pi Foundation we engage young people in learning about computing and creating with digital technologies We do this not only by developing curricula for formal education and introducing tens of thousands of children around the world to coding at home but also through supporting non formal learning activities such as Code Club and The post Non formal learning activities What do we know and how do we apply it to computing appeared first on Raspberry Pi |
2022-11-01 11:04:21 |
Cisco |
Cisco Blog |
Partner Summit 2022: Let’s Own the Opportunity to Build a World of Secure, Resilient Organizations |
https://blogs.cisco.com/security/partner-summit-2022-build-world-of-secure-resilient-organizations
|
Partner Summit Let s Own the Opportunity to Build a World of Secure Resilient OrganizationsIt s Partner Summit week and for me it s an important reminder that no one company not even Cisco can do it alone Our partners provide diverse perspectives expertise and solutions offerings Each partner plays a key part in delivering the outcomes and experiences our customers need want and expect So when we say “Let s Own |
2022-11-01 11:30:00 |
海外科学 |
NYT > Science |
What Lula’s Victory in Brazil Means for Climate |
https://www.nytimes.com/2022/10/31/climate/brazil-election-lula-bolsonaro-climate.html
|
amazon |
2022-11-01 11:42:17 |
医療系 |
医療介護 CBnews |
電子処方箋モデル事業、「最終的に約100施設で」-加藤厚労相 |
https://www.cbnews.jp/news/entry/20221101195137
|
取り組み |
2022-11-01 20:10:00 |
ニュース |
BBC News - Home |
Minister warns on language after Suella Braverman 'invasion' comment |
https://www.bbc.co.uk/news/uk-politics-63466532?at_medium=RSS&at_campaign=KARANGA
|
comments |
2022-11-01 11:32:37 |
ニュース |
BBC News - Home |
Matt Hancock suspended as Tory MP for joining I'm a Celeb cast |
https://www.bbc.co.uk/news/uk-politics-63471923?at_medium=RSS&at_campaign=KARANGA
|
reality |
2022-11-01 11:41:38 |
ニュース |
BBC News - Home |
South Korea Halloween crush: Police admit response was inadequate |
https://www.bbc.co.uk/news/63467200?at_medium=RSS&at_campaign=KARANGA
|
calls |
2022-11-01 11:08:35 |
ニュース |
BBC News - Home |
Ukraine war: Grain deal continues despite Russia pull-out |
https://www.bbc.co.uk/news/world-europe-63467042?at_medium=RSS&at_campaign=KARANGA
|
moscow |
2022-11-01 11:48:30 |
ニュース |
BBC News - Home |
Treasury warns of tax rises to fill financial hole |
https://www.bbc.co.uk/news/uk-politics-63465935?at_medium=RSS&at_campaign=KARANGA
|
source |
2022-11-01 11:01:51 |
ニュース |
BBC News - Home |
Pandemic furniture star Made.com nears collapse |
https://www.bbc.co.uk/news/uk-63464641?at_medium=RSS&at_campaign=KARANGA
|
collapsethe |
2022-11-01 11:08:19 |
ニュース |
BBC News - Home |
Manston migrant centre: What are the problems? |
https://www.bbc.co.uk/news/explainers-63456015?at_medium=RSS&at_campaign=KARANGA
|
centre |
2022-11-01 11:51:14 |
ニュース |
BBC News - Home |
T20 World Cup: Jos Buttler survives two scares as he hits 73 |
https://www.bbc.co.uk/sport/av/cricket/63472006?at_medium=RSS&at_campaign=KARANGA
|
T World Cup Jos Buttler survives two scares as he hits England captain Jos Buttler hits a brilliant to steer England to a commanding total of in the must win T World Cup clash with New Zealand in Brisbane |
2022-11-01 11:29:54 |
コメント
コメントを投稿