python |
Pythonタグが付けられた新着投稿 - Qiita |
polars dfの重複するindexの削除 |
https://qiita.com/monaka_dev/items/4420450f573f9db93fcf
|
fdropduplicatessubsethoge |
2021-12-29 04:42:22 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
コードの添削をお願いします |
https://teratail.com/questions/375921?rss=all
|
コードの添削をお願いしますjQueryでの、コードの添削をお願いします。 |
2021-12-29 04:10:04 |
Git |
Gitタグが付けられた新着投稿 - Qiita |
今後のプログラム更新(gitコマンド) |
https://qiita.com/kyoceda/items/f0b8f05af8748a3f13fd
|
|
2021-12-29 04:23:46 |
海外TECH |
Ars Technica |
Alexa suggests 10-year-old put a penny on partially exposed plug |
https://arstechnica.com/?p=1822632
|
dangerous |
2021-12-28 19:10:40 |
海外TECH |
MakeUseOf |
8 Ways to Open the Windows Network Connections Tool |
https://www.makeuseof.com/windows-open-network-connections-tool/
|
connections |
2021-12-28 19:45:11 |
海外TECH |
MakeUseOf |
The 7 Best Drawing Apps for Windows 10 |
https://www.makeuseof.com/windows-10-best-drawing-apps/
|
windows |
2021-12-28 19:15:12 |
海外TECH |
DEV Community |
How to version Docker Images? |
https://dev.to/danyson/how-to-version-docker-images-cl0
|
How to version Docker Images If we use git for version management of our code base similarly we can use Docker as our version management tool for applications Lets imagine we have an application called Icecream We are going to store our Icecream application on a repository named Fridge so lets get the root access by executing the commandsudo iFirst we need to login to our repository called Fridge docker login FridgeNow pull the Icecream image from you Fridge docker pull Fridge Icecream plain syntax docker pull repo name Image name version tagIf you don t have a docker image named Icecream on our Fridge repository then lets build onedocker build t Icecream plain this command is executed from the working directory where our docker file is placedNow as we have our Icecream plain lets modify it to Icecream vanilla and Icecream chocolate For that we need to run our Icecream plain in to a containerdocker run it Icecream plain bashAdd the code for vanilla in our container and dodocker pscopy the container id of the running container and commitdocker commit lt container id gt Icecream vanillaNow run our Icecream plain in to a container againdocker run it Icecream plain bashAdd the code for chocolate in our container and dodocker pscopy the container id of the running container and commitdocker commit lt container id gt Icecream chocolateNow push the changes to your Fridge repositorydocker push Icecream vanilladocker push Icecream chocolateExplore us more on Doge Algo |
2021-12-28 19:47:37 |
海外TECH |
DEV Community |
Learn Javascript Functions |
https://dev.to/zahab/learn-javascript-functions-2f2g
|
Learn Javascript Functions IntroductionThis article explains JavaScript function in detail and followed the previous JavaScript article Learn JavaScript Part Therefore if you are not familiar with JS basics you may check the mentioned articles What are Functions in JavaScript Functions are containers that hold reusable code and perform a particular task Not just JavaScript but almost all programming languages have a concept of functions and every developer must deal with that while coding Functions are independent pieces of code and manage the large code Before moving on how it performs a task let s see how we can create a function In javaScript the function keyword is used to declare a function to identify a function it should have a name Here is the syntax for function declarationfunction name YOUR CODE Here is the example the function sayHi can be created using a function keyword followed by sayHi function name and a set of parentheses the function code will be written inside the curly braces Whenever the function is called it performs whatever instruction is written inside it here I created this function that whenever it is called it should print I like JavaScript function sayHi console log I like JavaScript sayHi I like JavaScriptHere is another function example function myFunction console log Hello world let c console log c myFunction Hello world JavaScript functions can be used as reusable code In below example I don t need to type the code every time I need it I can just call the function function myFunction console log Hello world let c console log c myFunction myFunction Hello world Hello world Functions also accept parameters parameters are the symbolic name for data that goes into a function A function can have one or more parameters In the below example the function has a parameter called num num accepts a value and performs the function task based on that value The parameter value will be initialized while calling the function function myFunction num console log num num myFunction myFunction You don t need to console log in functions the return is used to return the function statements function myFunction a b return a b console log myFunction ConclusionThat is it for this article I hope you found this article useful if you need any help please let me know in the comment section Feel free to contact me on Twitter |
2021-12-28 19:44:25 |
海外TECH |
DEV Community |
Deploy CockroachDB in a DigitalOcean Kubernetes Cluster |
https://dev.to/nayankalsariya/deploy-cockroachdb-in-a-digitalocean-kubernetes-cluster-3koe
|
Deploy CockroachDB in a DigitalOcean Kubernetes ClusterFor the DigitalOcean Kubernetes Challenge I wanted to deploy a database to a managed Kubernetes cluster and decided to go with CockroachDB Core The process to deploy on Kubernetes was simple I just followed the instructions in CockroachDB official documentation with just one change In Step Start Kubernetes instead of using hosted GKE or EKS as mentioned in the docs I used DigitalOcean s Managed Kubernetes service So my Step Start Kubernetes was basically How to Create Kubernetes Clusters Using the Control Panel from DigitalOcean I created a node cluster with s vcpu gb droplets You should be able to do it with slightly smaller droplets too Rest of the steps were as mentioned in the doc Step Start CockroachDBStep Use the built in SQL clientStep Access the DB ConsoleStep Stop the cluster |
2021-12-28 19:36:00 |
海外TECH |
DEV Community |
Add MongoDB and PostgreSQL in Django using Docker |
https://dev.to/thepylot/add-mongodb-and-postgresql-in-django-using-docker-55j6
|
Add MongoDB and PostgreSQL in Django using DockerOriginally published in The PylotIn this post you ll learn how to integrate multiple databases with the Django framework and navigate incoming data using a DB router that automatically writes them to the required database Real world example scenarioUsually the majority of projects are using relational databases such as Postgres or MySQL but sometimes we also need NoSQL databases to hold extra heavy data which decrease the overload of relational databases Assume that your project generates tons of logs while processing some heavy tasks in a queue These log objects must be stored in non relational databases instead of hitting relational databases each time and extremely overloading them with huge messy log objects I guess you spot the problem here so let s take a look at what can we do about it Setting up environmentCreate an empty directory named app then let s start by creating a Dockerfile that will copy our working directory and also install required dependencies for Python and Postgres app DockerfileFROM python slimRUN apt get update amp amp apt get upgrade y amp amp apt get install y build essential libssl dev libffi dev python dev build essential libjpeg dev zlibg dev gcc libc dev bash git amp amp pip install upgrade pipENV LIBRARY PATH lib usr libENV PYTHONUNBUFFERED ENV PYTHONDONTWRITEBYTECODE WORKDIR appCOPY appRUN pip no cache dir install r requirements txtThese wheel packages will be used while installing and setting up Postgres and other services in the system Now we need to add requirements txt to install the required packages for our project app requirements txtcelery Django git git github com thepylot djongo git egg djongomongoengine pylint mongoengine pymongo psycopg binary redis FakerWe are going to use djongo which will help to convert SQL to MongoDB query By using djongo we can use MongoDB as a backend database for our Django project At the time of writing this post djongo has issues supporting Django versions above v but it can be resolved easily by just by changing the version from the package itself by forking it to your repository There is a file named setup py that holds configuration settings and you ll see the block named install requires where the supported version is mentioned Don t forget to fork it first setup pyinstall requires sqlparse pymongo gt django gt lt We just need to refactor it to fit with our current version of Django I am using so I will replace the to and it will look like below install requires sqlparse pymongo gt django gt lt Once you finished search for requirements txt and change the Django version there as well requirements txt in djongo django gt lt That s it Commit your changes to the forked repository and then you need to include it to your requirements txt file but this time it will get from your forked repository like below git git github com YOUR GITHUB USERNAME djongo git egg djongoYou don t have to go through all these processes because I already included it as you can see from above requirements txt so feel free to use mine if your Django version is as well There are some other dependencies like celery where we ll use it as the queue to pass time consuming tasks to run in the background and redis is just a message broker for celery This topic is out of scope for this post but you can visit Dockerizing Django with Postgres Redis and Celery to understand it more Now it s time to set up our services by configuring compose file Create this file in a root level of your current directory which means it will be outside of app directory There are going to be services in total mongodb for setting up MongoDBpostgres for setting up PostgreSQLapp Django projectcelery Queue for tasksredis Message broker that required for celery docker compose ymlversion services mongo image mongo container name mongo restart always env file env environment MONGO INITDB ROOT USERNAME root MONGO INITDB ROOT PASSWORD root MONGO INITDB DATABASE MONGO DB NAME MONGO INITDB USERNAME MONGO DB USERNAME MONGO INITDB PASSWORD MONGO DB PASSWORD volumes PWD data mongo data db PWD docker mongo fixtures import PWD docker mongo scripts init sh docker entrypoint initdb d setup sh ports postgres container name postgres image postgres restart always env file env environment POSTGRES DB app db POSTGRES USER app db user POSTGRES PASSWORD supersecretpassword POSTGRES PORT ports volumes PWD data postgres var lib postgresql data PWD docker postgres scripts create test db sql docker entrypoint initdb d docker postgres init sql redis image redis container name redis restart always env file env command redis server requirepass REDIS PASSWORD ports volumes PWD data redis var lib redis app build app image app latest container name app restart always command python manage py runserver env file env volumes PWD app app ports depends on postgres redis celery build app image app latest container name celery restart always command celery A app worker c l INFO without heartbeat without gossip without mingle env file env environment DJANGO SETTINGS MODULE app settings DJANGO WSGI app wsgi DEBUG False volumes PWD app app depends on postgres redisnetworks default I will not go through this configuration in detail by assuming you already have knowledge about docker and compose files Simply we are pulling required images for the services and setting up main environment variables and ports to complete the configuration Now we also need to add env file to fetch values of environment variables while building services env Mongo DBMONGO DB HOST mongoMONGO DB PORT MONGO DB NAME mongo dbMONGO DB USERNAME rootMONGO DB PASSWORD rootMONGO DB URI mongodb root root mongo PostgreSQLPOSTGRES HOST postgresPOSTGRES DB app dbPOSTGRES USER app db userPOSTGRES PASSWORD supersecretpasswordPOSTGRES PORT RedisREDIS HOST redisREDIS PORT REDIS PASSWORD supersecretpasswordBROKER URL redis supersecretpassword redis REDIS CHANNEL URL redis supersecretpassword redis CELERY URL redis supersecretpassword redis Next we ll create a new Django project inside our app folder docker compose run app sh c django admin startproject app The project structure should be like below ├ーapp│├ーapp││├ーasgi py││├ー init py││├ーsettings py││├ーurls py││└ーwsgi py│├ーDockerfile│├ーmanage py│└ーrequirements txt├ーdocker compose yml└ー envIf you see dbsqlite in project files then you should delete it since we ll use postgres it as a relational database You also will notice data directory which represents the volume of MongoDB and Postgres Integration with PostgreSQLWe are ready to add our primary relational database which is going to be postgres Navigate to settings py and update DATABASES configuration like below DATABASES default ENGINE django db backends postgresql HOST os environ get POSTGRES HOST NAME os environ get POSTGRES NAME USER os environ get POSTGRES USER PASSWORD os environ get POSTGRES PASSWORD PORT os environ get POSTGRES PORT The default database set to postgres and environment variables will be fetched from env file Sometimes postgres is having connection issues caused by racing issues between Django and postgres To prevent such situations we ll implement a custom command and add it to commands block in compose file In this way Django will wait postgres before launch The recommended path of holding commands is core management commands from the official documentation of Django So let s create an app named core then create a management commands directory inside it docker compose run sh c django admin startapp core Then add following command to hold Django until postgres is available core management commands wait for db pyimport timefrom django db import connectionsfrom django db utils import OperationalErrorfrom django core management import BaseCommandclass Command BaseCommand Django command to pause execution until db is available def handle self args options self stdout write Waiting for database db conn None while not db conn try db conn connections default except OperationalError self stdout write Database unavailable waititng second time sleep self stdout write self style SUCCESS Database available Make sure you included init py into sub directories you created Now update app service in compose file by adding this command docker compose yml app build app image app latest container name app restart always command gt sh c python manage py wait for db amp amp python manage py migrate amp amp python manage py runserver env file env volumes PWD app app ports depends on postgres redisConsider the command block only and you ll see we now have two more commands there Integration with MongoDBActually the integration of MongoDB is so simple thanks to djongo which handles everything behind the scenes Switch to settings py again and we ll add our second database as nonrel which stands for the non relational database settings pyDATABASES default ENGINE django db backends postgresql HOST os environ get POSTGRES HOST NAME os environ get POSTGRES NAME USER os environ get POSTGRES USER PASSWORD os environ get POSTGRES PASSWORD PORT os environ get POSTGRES PORT nonrel ENGINE djongo NAME os environ get MONGO DB NAME CLIENT host os environ get MONGO DB HOST port int os environ get MONGO DB PORT username os environ get MONGO DB USERNAME password os environ get MONGO DB PASSWORD TEST MIRROR default The same logic applies here as we did for default database which is postgres Setting up DB routerDB router which will automatically write objects to a proper database such as whenever the log object created it should navigate to mongodb instead of postgres Setting up a DB router is simple we just need to use router methods that Django provides and define our non rel models to return the proper database Create a new directory named utils inside the core app and also add init py to mark it as a python package Then add the new file which is DB router below core utils db routers pyclass NonRelRouter A router to control if database should use primary database or non relational one nonrel models log def db for read self model hints if model meta model name in self nonrel models return nonrel return default def db for write self model hints if model meta model name in self nonrel models return nonrel return default def allow migrate self db app label model name None hints if db nonrel or model name in self nonrel models return False return Truenonrel models We are defining the name of our models in lowercase which belongs to a non rel database or mongodb db for read the function name is self explanatory so basically it is used for reading operations which means each time we try to get records from the database it will check where it belongs and return the proper database db for write the same logic applies here It s used to pick a proper database for writing objects allow migrate Decided if the model needs migration In mongodb there is no need to run migrations since it s a non rel database Next we should add extra configuration in settings py to activate our custom router settings py DATABASE ROUTERS core utils db routers NonRelRouter Great Our database configurations are finished and now it s time to make a few changes in Django as well before launching everything Setting up Celery and RedisThis part is a bit out of scope but since I want to illustrate some real world app then those tools are always present in projects to handle heavy and time consuming tasks Let s add celery to our project but it should place in our project folder alongside with settings file celery pyimport osfrom celery import Celeryos environ setdefault DJANGO SETTINGS MODULE app settings app Celery app app config from object django conf settings namespace CELERY app autodiscover tasks Basically it will discover all tasks alongside the project and will pass them to the queue Next we also need to update init py file inside the current directory which is our Django project init pyfrom celery import app as celery app all celery app Celery requires a broker URL for tasks so in this case we will use Redis as a message broker Open your settings file and add the following configurations settings pyCELERY TASK TRACK STARTED TrueCELERY TASK TIME LIMIT CELERY IGNORE RESULT TrueCELERY BROKER URL os environ get CELERY URL CELERYD HIJACK ROOT LOGGER FalseREDIS CHANNEL URL os environ get REDIS CHANNEL URL Now try to run docker compose up d and all services should start successfully Adding models and celery tasksIn this section we ll pass a new task to the celery queue and test if our DB router works properly and writes objects to the required database Create a new directory inside the core app named models and add the following file inside it to hold MongoDB models core models mongo models pyfrom djongo import models as mongo modelsclass Log mongo models Model id mongo models ObjectIdField message mongo models TextField max length created at mongo models DateTimeField auto now add True updated at mongo models DateTimeField auto now True class Meta use db nonrel ordering created at def str self return self messageAs you see it s a very simple Log model where it will let us know what s going on behind the scenes of internal operations of our application Then add a model for Postgres as well core models postgres models pyfrom django db import modelsclass Post models Model title models CharField max length description models TextField def str self return self titleWe are going to generate random posts and make some of them fail in order to write error logs for failed data Lastly don t forget to include init py inside models directory models init pyfrom postgres models import from mongo models import Now we need to create a celery task that will generate tons of posts with random values by using Faker generators core tasks pyimport loggingimport randomfrom faker import Fakerfrom models import Postfrom celery import shared taskfrom core utils log handlers import LoggingHandlerlogger logging getLogger name logger addHandler LoggingHandler shared taskdef create random posts fake Faker number of posts random randint for i in range number of posts try if i title None else title fake sentence description fake text Post objects create title title description description except Exception as exc logger error The post number s failed due to the s i exc By adding if statement there we are forcing some of the posts to fail in order to catch exceptions and write them to mongodb As you noticed we are using a custom log handler that will write the log data right away after its produced So create a new file named log handlers py inside utils folder core utils log handlers pyimport loggingfrom core models import Logclass LoggingHandler logging Handler Save log messages to MongoDB def emit self record Log objects create message self format record Great We are almost ready to launch Lastly let s finish creating a very simple view and URL path to trigger the task from the browser and return JSON a response if the operation succeeded core views pyfrom django http response import JsonResponsefrom tasks import create random postsdef post generator request create random posts delay return JsonResponse success True urls pyfrom django contrib import adminfrom django urls import pathfrom core views import post generatorurlpatterns path admin admin site urls path post generator Include the core app inside INSTALLED APPS configuration in settings py then run the migrations and we re done docker compose run app sh c python manage py makemigrations core Now if you navigate to the task will be passed to the queue and post objects will start to generate Try to visit admin and you ll see log objects created successfully and by this way we re avoiding overload postgres while it handles only relational data Source Code thepylot django mongodb postgres Integration of multiple databases with Django framework and navigate incoming data using DB router which automatically writes them to required database MongoDB and Postgres integration with DjangoThis project includes multiple database configurations to launch Django project with Postgres and MongoDB Getting StartedThis project works on Python and Django If you want to change the Django version please follow the link below to get information about it Add MongoDB and PostgreSQL in Django using DockerRun the following command to makemigrations docker compose run app sh c python manage py makemigrations core then start the containers docker compose up dAfter containers launched navigate to home path and celery will automatically receive the task View on GitHub Support If you feel like you unlocked new skills please share them with your friends and subscribe to the youtube channel to not miss any valuable information |
2021-12-28 19:30:35 |
海外TECH |
DEV Community |
convert website to windows app and android app in a few minutes for free |
https://dev.to/amreldessouki/convert-website-to-windows-app-and-android-app-in-a-few-minutes-by-link-306c
|
convert website to windows app and android app in a few minutes for freeToday we present urlgapp a tool designed to convert your url to windows app and android app in a few minutes ️AndroidFeatures that we are provide for android app Apk amp App bundleGoogle play KeyMedia permissionDialog Ask to exit appInternet connection error native pageAndroid native spinnerDo you have any example for this tool in google play yes we have you can download it from hereit s very simple appwhy you add a media permission urlgapp doesn t know what type of website it you but if your user upload or download any file without any permission google play will remove your app from store so we have added it by default to make sure your app is safe on google playWindowsvery important hint for windows appwe are use iframe in windows app so you need to make sure your website allow iframe cross domain if you try or or any of the popular website it will show white screen that mean this websites not allow any one to use their website out of their domain so please make sure to allow iframe cross domainIf you have any question feel free to askcheck it nownext topic will be convert you code file html css js to windows app to avoid the iframe cross domain |
2021-12-28 19:21:01 |
海外TECH |
Engadget |
Lego's 'Sonic the Hedgehog' set arrives January 1st |
https://www.engadget.com/lego-sonic-the-hedgehog-release-date-price-193034341.html?src=rss
|
Lego x s x Sonic the Hedgehog x set arrives January stLego isn t quite done mining your video game nostalgia After nearly a year of work the company has revealed that its Sonic the Hedgehog Green Hill Zone set will be available online and in Lego stores on January st for £ The brick based recreation of the game s best known area includes minifigs for Sonic Dr Eggman aka Dr Robotnik two critters and the Phantom Ruby Sonic won t dart around loops unfortunately but there is a Technic lever to launch him or any other characters along with the rings and powerups you d expect The set is the finished adaptation of Sonic fan Viv Grannell s submission to the Lego Ideas platform Their concept set racked up the votes necessary to be considered for a real set Lego officially began work in February You probably won t see too many more video game themed Lego sets in the near future Sonic and Mario are two of the best known franchises ーother game related Lego Ideas for Legend of Zelda Metroid and other classics haven t come close to passing the vote threshold This does illustrate the power of crowdsourcing though and it s good news for kids who grew up with a Genesis or Mega Drive in the living room |
2021-12-28 19:30:34 |
医療系 |
医療介護 CBnews |
21年の終わりに、医療者への敬服と病院経営者へ提言を-先が見えない時代の戦略的病院経営(161) |
https://www.cbnews.jp/news/entry/20211224160652
|
落ち着き |
2021-12-29 05:00:00 |
ニュース |
BBC News - Home |
West Ham hit four at struggling Watford to move up to fifth |
https://www.bbc.co.uk/sport/football/59736887?at_medium=RSS&at_campaign=KARANGA
|
West Ham hit four at struggling Watford to move up to fifthWest Ham end their recent run of poor form by coming from behind to beat struggling Watford at Vicarage Road and move up to fifth in the Premier League |
2021-12-28 19:02:07 |
ニュース |
BBC News - Home |
Van Gerwen out of World Darts Championship after positive Covid-19 test |
https://www.bbc.co.uk/sport/darts/59812911?at_medium=RSS&at_campaign=KARANGA
|
covid |
2021-12-28 19:28:28 |
ニュース |
BBC News - Home |
Crystal Palace outclass Norwich to go ninth in Premier League |
https://www.bbc.co.uk/sport/football/59736890?at_medium=RSS&at_campaign=KARANGA
|
selhurst |
2021-12-28 19:28:27 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
「お年玉株」440銘柄!利益伸張、割安度アップ、高利回り、売上高急拡大の4大ランキング - 有料記事限定公開 |
https://diamond.jp/articles/-/291164
|
業績予想 |
2021-12-29 04:45:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
「年収」で転職先を選んではいけない理由とは?転職活動で陥りがちな12の罠【動画】 - 最高のキャリア・転職術 |
https://diamond.jp/articles/-/291743
|
転職 |
2021-12-29 04:40:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
2022年株価は「年末3万2000円」展開か、自動車“リベンジ生産”がけん引 - 政策・マーケットラボ |
https://diamond.jp/articles/-/291769
|
世界経済 |
2021-12-29 04:20:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
コカ・コーラの経営が「会計の常識外れ」である理由、59年連続増配のカラクリ - クイズと事例で頭に入る!決算書の読みどころ |
https://diamond.jp/articles/-/291768
|
飲料メーカー |
2021-12-29 04:15:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
経済学の評価一転、脇役だった財政政策が景気刺激の「主役」に - 経済分析の哲人が斬る!市場トピックの深層 |
https://diamond.jp/articles/-/291767
|
経済学の評価一転、脇役だった財政政策が景気刺激の「主役」に経済分析の哲人が斬る市場トピックの深層年以前は、景気刺激策として財政政策を積極的に活用すべきではないとされていた。 |
2021-12-29 04:10:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
パレスホテルに「リベンジ消費」は来ている?社長が答えた最大の変化とは - 「リベンジ消費」は起きているのか |
https://diamond.jp/articles/-/291853
|
パレスホテルに「リベンジ消費」は来ている社長が答えた最大の変化とは「リベンジ消費」は起きているのかパレスホテル東京は皇居に隣接する閑静な雰囲気が人気で、国内外の客をもてなしてきた。 |
2021-12-29 04:07:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
パレスホテルは競争力をどのように維持する?社長が自ら実践することとは - 「リベンジ消費」は起きているのか |
https://diamond.jp/articles/-/291854
|
パレスホテルは競争力をどのように維持する社長が自ら実践することとは「リベンジ消費」は起きているのかパレスホテル東京は皇居に隣接する閑静な雰囲気が人気で、国内外の客をもてなしてきた。 |
2021-12-29 04:06:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
ジム・オニール氏が予測する2022年の世界経済「これほど不確実性に満ちた年はない」 - フィジカルとテクノロジー |
https://diamond.jp/articles/-/291762
|
brics |
2021-12-29 04:06:00 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
店員に「お愛想」は失礼?飲食店の「隠語」を客が使ってはいけないワケ - News&Analysis |
https://diamond.jp/articles/-/290747
|
newsampampanalysis |
2021-12-29 04:05:00 |
ビジネス |
東洋経済オンライン |
巨大ターミナル「新宿」を迷路駅にした数奇な歴史 古くからにぎわった東口、浄水場だった西口 | 駅・再開発 | 東洋経済オンライン |
https://toyokeizai.net/articles/-/478202?utm_source=rss&utm_medium=http&utm_campaign=link_back
|
東洋経済オンライン |
2021-12-29 04:30:00 |
コメント
コメントを投稿