#yes i have done this for multiple f/os >w<< /div>
Explore tagged Tumblr posts
Text
one of my fav things to draw is me holding my f/o's face, giving them a surprise kiss on the cheek and making them look surprised as hell
#yes i have done this for multiple f/os >w<#f/o#self ship#self shipping#fictional other#general#mine#f/o art#self ship art#self ship community#< pls interact <3 i need self shipper moots
8 notes
·
View notes
Text
Blog Info Speedrun
Requests: CLOSED while I work on the kink prompts (details here) To see what I'm working on, the full list of kink prompt requests I've accepted can be seen here~
Confessions, concepts, generally thirsting: Always OPEN
^ seriously I love blindly thirst-posting, send me that shit
Commissions: CLOSED for now - my life is a bit too chaotic to hold myself to writing deadlines
~~~
Fandoms I write for
^^^ click the link, but here's the short version: Fire Emblem. Genshin Impact, Kingdom Hearts, Yu Yu Hakusho, Jojo's Bizarre Adventure
Plus others that I'm happy to chat and thirst post about, but may not know well enough or feel confident enough about the material to actually write for.
~~~
Masterlists:
^ if that link doesn't work, here's my masterlists by fandom:
Fire Emblem Three Houses/Hopes: Poly & Multi-character Church, Ashen Wolves, Misc Golden Deer Blue Lions Black Eagles
Fire Emblem (misc)
Genshin Impact
Kingdom Hearts
JoJo's Bizarre Adventure
Yu Yu Hakusho
Misc / other (thus far, Stardew Valley, Honkai Star Rail, Rune Factory 5, and subject to grow over time)
~~~
Me: just call me Badger if you want
She/her/they/whatever
I am old and write smut, minors DNI you will get blocked
I'm a bit cagey about some personal info on this blog, but when it comes to thirsting, gushing about F/Os, kinks, w/e, send it all my way, we're open about our horny here.
~~~
When requesting (the short list):
No minors (under 18), no lolis, no "totally 100 years old but looks and/or is written like a child" - if canon age is unknown I'll use my best judgement and you'll just have to be okay with that.
Non-con is generally a no, Yandere and Dub-con are a conditional yes (the condition is that I'll decide whether I'm cozy with it or not on a case-by-case basis)
Don't ask for more than 3 characters in one ask- no, the solution to this is NOT to send multiple asks to cover all the characters you want, I'll just start deleting them.
I have no interest whatsoever in writing the 'player insert' characters from games (Lumine/Aether from Genshin, Ares/Alice from RF5, literally all of them from the Fire Emblem series, etc), so I'll likely ignore requests asking for them. I'm more than happy to incorporate aspects of these characters into how I write the 'reader insert' in my fics, but if you're asking for, like, Byleth x Reader or Lumine x Reader, I probably won't bite because player insert characters are boring, fight me about it.
** Please specify if you have a preferred gender/gender identity for the ReaderInsert character- I'll likely default to Fem or AFAB if it's left vague
** Please specify if you want a poly relationship, rather than just thoughts on multiple characters.
-> see more in my full rules list
~~~
If I do not get to your request, here are a few possible reasons:
- Tumblr ate your Ask (it do that sometimes wtf), or you sent it when my requests were CLOSED, so I deleted it
- I have already done something very similar in the past and have nothing new to add to the concept
- It's a concept that I simply don't have any interesting thoughts on and can't find much to write for it- sorry, I'm human
- It goes against one or more of my rules (duh)
- I've received too many asks from you and I'm trying to keep my queue open for new-comers and shy folks.
- You asked me to write for like a dozen characters in one Ask and like listen dawg, I do this for fun, I don't need to be stressed keeping track of that many people lol
And finally:
- Idk man I do what I want. It's free smut, get off my back.
As a final note: My schedule is Wack and changes a lot. If I'm slow to update and do requests, you're just gonna have to learn to live with it somehow.
147 notes
·
View notes
Note
That ask meme... All of
Lmao les gooooo! Imma use my obey me si: Grey
What is your s/i's name & pronouns?
- Grey, they/them
How similar is your s/i to you? Are they a carbon copy, completely different or a mix of the two?
- me but with better hair
Does your s/i have a full backstory yet? Or is it still in the works? If it's done can we see it?
- its in the works, maybe one day ill post it
How did your s/i feel when they first met your f/o(s)? How do they feel about them now?
- since grey is in the obey me universe, they met their bois thanks to Dia's exchange program
Do you speak about your s/i in first or third person?
- third
Has your s/i undergone any design/story changes since they were first made?
- yes actually, i was gonna have them be straight up blond instead of blond w/ pink bangs + i decided to give them my facial scars
Give us 3 random facts abt your s/i!
- They draw on their skin when bored, they have permanent dark circles, and their favorite color is black
Does your s/i have any kind of powers?
- magic~ (ノ´ヮ`)ノ*: ・゚:・゚✧
Does your s/i have any hobbies that you don't have?
- they study languages in their spare time (which id love to do but dont have the patience for)
How many s/i's do you have? Do you use the same s/i for multiple f/os or make completely different ones?
- currently i have three: Ace, Grey, and Wendino. Grey is the one i usually throw into different universes, since ace and wendino are specialized to their og universes
Does you s/i have one outfit they're always seen in or multiple?
- multiple cuz i can never stay on model
Can we see a picture of your s/i?
Would you ever want to cosplay as your s/i?
- i do every day
Does your s/i get jealous easily?
- grey does, yea. VERY easily in fact
Does your s/i interact with any other self shippers s/i's?
- grey interacts with @selfshipping-gremlin 's Jupiter often, we just havent drawn it yet
2 notes
·
View notes
Photo
6 Years Later - Reviewing My Build's Successes and Failures At 30,000 Hours of Uptime
So here it is, folks. The 4 grand, big brand, first hand grandstand on an often-neglected topic – what to expect of your machine after years of hard use. Listed below is the encased case I'll be studying for this piece. Components that look like this are in the machine currently. Components that look like this were replaced with upgrades. Components that look like this failed in service.
Type Item Price CPU Intel - Core i5-4670K 3.4 GHz Quad-Core Processor $230 CPU Cooler Noctua - NH-D14 64.95 CFM CPU Cooler $74.95 @ Amazon Motherboard Asus - Z87-Pro ATX LGA1150 Motherboard ~$180 Memory Mushkin - Redline 8 GB (2 x 4 GB) DDR3-1866 Memory ~$100? Upgraded Memory El Cheapo Nemix 32 GB (4 x 8 GB) DDR3-1600 Memory $150.00 Storage Samsung - 840 Series 120 GB 2.5" Solid State Drive ~$120? Storage Seagate - Barracuda 1 TB 3.5" 7200RPM Internal Hard Drive $58.49 @ OutletPC Replacement Storage Western Digital - BLACK SERIES 2 TB 3.5" 7200RPM Internal Hard Drive $119.16 @ OutletPC Video Card Asus - GeForce GTX 780 3 GB DirectCU II Video Card $650 Upgraded Video Card EVGA GeForce GTX 1080 FTW GAMING ACX 3.0 ~$650 Replacement Video Card EVGA GeForce RTX 2070 XC ULTRA GAMING $0 Case Fractal Design - Define R4 (Black Pearl) ATX Mid Tower Case ~$100 Power Supply Fractal Design - Newton R3 600 W 80+ Platinum Certified Semi-Modular ATX Power Supply ~$100 Optical Drive Asus - DRW-24F1ST DVD/CD Writer $21.39 @ OutletPC Operating System Microsoft - Windows 8 OEM 64-bit ~$100 Operating System Microsoft - Windows 10 64-bit $0 Case Fan Fractal Design - FD-FAN-SSR2-140 66 CFM 140mm Fan $13.89 @ SuperBiiz Monitor Asus - VG248QE 24.0" 1920x1080 144 Hz Monitor $246.00 @ Amazon Monitor Asus - VG248QE 24.0" 1920x1080 144 Hz Monitor $246.00 @ Amazon Upgraded Monitor LG - 34UM95 34.0" 3440x1440 60 Hz Monitor $750.00 Total ~$4,000 Generated by PCPartPicker
As you can tell I had two failures, both of them pretty major. I'll cover them a little farther down.
Starting off, these are the goals I had in mind when building this machine: First and foremost, I wanted the best performance in flight simulators and CAD/CAM software that I could justify spending for. I wanted perfect snappiness in Windows, MS Office, and web browsers. Second, I wanted longevity. Third, silence. I'd say this build achieved all of those things... but I have a few warnings for people looking to build a rig with a similar mindset.
I had to make multiple upgrades to the machine for it to keep up with the expanding RAM, VRAM, and storage requirements as sims like DCS got extra content and released updates with power-hungry graphics improvements. Also I may have purchased a much larger monitor and a VR headset... sorry 780.
If you have to skimp on things, don't skimp on the CPU, motherboard, or PSU. Although I have had the urge to get an M.2 SSD and upgrade my CPU for some time now (although really it's still keeping up perfectly fine), the fact that my current motherboard and RAM will also need to be replaced makes that unjustifiable. At this moment, for me to upgrade to a i7-8700k and an M.2 without losing RAM would cost about $1,200. Totally out of the ballpark.
Expect to have failures and do maintenance. I was lucky and had no DOA parts in the build, and the thing ran absolutely flawlessly for years. However about 5 years into the life of the machine, the 1TB storage drive suffered a soft failure. I noticed obvious performance issues, and with drive health monitoring software open I watched it slowly die as I attempted to transfer all the files I wanted elsewhere. I got everything important, but shit. You know the saying that while SSDs have a built-in service life, HDDs either fail within the first couple years or last until obsolescence? Ahhh... not in my experience. Anything I build from now on will probably be all-SSD.
(3 cont'd) As for the 1080 that died, that was much more dramatic. I'm flying along in the sublime DCS F/A-18C recreating Mongo's MiG-21 shootdown in the Gulf War when all at once the computer instantly powers off with a pop and the screen goes black. I'm thinking "...power outage?" until I smell it – something let the smoke out. After a postmortem I decide the smell had to have come from the GPU. So I throw in the old 780 and it boots up – but no video output. Shit. Video output from the IGPU works fine though? Huh. So I try a different PCIe slot and what do you know... I'm pretty sure my 1080 fried the only 16x slot on the board. Not too big a deal to run on 8x but now I feel the machine is in its twilight years with one of the newest components in the rig failing so spectacularly and running with a damaged motherboard. Being realistic though, I won't be at all surprised if this thing will keep going another 6 years or more with an SSD change.
Warranties matter as much or more than quality. At first, I went all-in on the highest quality parts I could get without paying any attention to the warranty service. To this day I still consider the Asus 780 DCUII an incredibly well-built card. When I retrieved it to replace the blown-up 1080 I was impressed all over again with how sturdy it felt and just the quality of work Asus put into it. But all cards can fail, and if the same thing that happened to my EVGA 1080 had happened to my Asus 780... well, I'd have been shit out of both luck and $650. As it stands I'm actually getting an upgrade out of this catastrophe (albeit still being left with a dead PCIe slot).
Don't bother with watercooling, not even AIOs except in very specific use cases. It's not anywhere close to being worth the headache for the vast majority of people going that route. The amount of additional maintenance and attention required to keep a watercooled rig going strong for so many years is way more than you're going to want to do. I know you're pretty into the hardware side of your computer now, but just trust me. You're going to be a substantially different person in 5 years, most likely one that wants a machine that just works without any doubts about water leaks, water line contamination, pumps dying, etc.
Shit's expensive, yo. Yes I know I didn't do my wallet any favors here, but just be aware that if you want to maintain a top-shelf rig for many years to come, get ready to shell out many thousands too. It's not a one-and-done purchase, even if you can handle falling behind the state of the art. I didn't even list all of my peripherals here. In addition to all of this I've also got a UPS, a Das Keyboard 4, monitor stand for the 34UM95 and an Ergotron arm mount for the VG248QEs, flight sim peripherals, headphones, DAC, and more. Plus power bills I've honestly got no clue how much this thing has cost me in total. At least $5.5k. Was it worth it? Oh fuck yeah it was worth it. But I'm not exactly on a tight budget here... don't stretch yourself for something that is ultimately probably going to serve as much as a distraction from responsibility as it will a tool for bettering your life. It undeniably is the latter... but you don't need to spend nearly as much if you just want a productivity machine.
What would I have done differently with the initial build? Probably nothing. I probably should have gone all-SSD a year or two ago but that's fine. In the near future I'll just replace the OS drive and add a storage SSD. My machine has been an absolute pleasure to own, a dream come true after years of the shitty family computer (even by 90s standards) and countless craptops. If you have the means, I highly recommend picking one up.
4 notes
·
View notes
Text
Self-shippers, wanna see something cool?!
I've been scrolling through / following the #self shipping tag for a while. Noticed I have like, a F/o set up most people probably don't have that I'd love to share / teach anyone else to make! Just shoot me a message, don't be afraid, I literally have nothing better to do and love when people take interest in whatever I'm up to! I'm not worried about damaging any Street CredTM on my main here, I haven't been relevant in forever, if at all.
(This is my first time using a “Keep reading” cut off, since this post is sort of long. I think that sends folks to my blog, sorry if my font is hard to read in, idk how to change it. There’s always copy-pasting into a word processor)
The place where this amazing thing lies? Google Sheets. I guarantee you, it's useful for WAY more than data entry. I've been building up this "F/o set up", let's call it King Kong, an arbitrary name I'd given it that just sorta stuck, since 10/14/17. It all started with the Grade Book template.
Wow, it's been a while since I looked at the base template, so much has been changed since then. Not gonna show the real thing / parallel to this page, because sensitive info, but I will talk 'bout it's features. No one's ever asked and I never plan on sharing the sheet itself, so I'm just gonna rant on all the capabilities (and if anyone's interested, I can share some formulas to help build your own)
Note: This is all 1 Google Sheet, made the whole thing myself except for the /very/ base, which I think was the School Grades template? It's been a year since I started it, it didn't start this awesome.
There's a page full of graphs, info grabbed from my F/os to find what I'm attracted to. I hope to build The Ultimate OC, or one geared towards myself one day with this info.
You get one (1) graph. Looks like I have a preference.
The most used page is the Mobile viewport, or "Mobile RE", (Mobile Random Events) shaped to fit my phone. In the center is a randomized prompt, with pieces taken from another page. A different F/o is generated for each prompt, sometimes multiple (road trips are fun). Some prompts have a "switch" that is effected by character traits, such as characters listed as "Introvert" or "Extrovert" , or “Punchy-fist” or “Pacifist” may see a slightly different prompt
Example prompts -
"Spongebob Squarepants seems to have caught a bad case of the hiccups. Seems frustrating ~ You're just glad it ain't you."
(Has an Honest / Dishonest switch) "While you and Spongebob Squarepants are walking around town, you find a wallet. You could care less what is done with it, but Spongebob Squarepants insists the wallet be returned to it's owner. It's even got the ID in there and everything, so you oblige. One good deed a day." (While the Dishonest may just pocket it)
(Note: Spongebob ain't in there, just first rando I could think of XD)
I usually just peek at these for like a sec / enjoy 'em / imagine 'em in the moment, but you can write as many prompts as you want, even using them as actual prompts for drawing or fanfiction writing! I’d love to share the premise of some of the prompts I’ve collected if anyone is interested there.
There's also a refresh button, a break switch (seen here "Turned off for editing"), 25+ color themes (got "Chocolate" set in the pic), Night reading mode (love reading white words on black text, it’s on 99% of the time), Game modes such as "Best of" which just shows my favorite prompts, pronoun / name dropdown lists. want your F/o to call you your nickname? One of your kin names? Genderfluid and don’t want to be locked down?.
Sound too good to be true? Hell naw mate, shit's real. Just needed to put a little work into it and boom there it is!
Looking outside the viewport, there's a currency system (Pearls), along with that, a gambling prompt exists (Though I have to calculate winnings / make changes manually), Merchant's Prompt (they can buy stat boosting / effect items w/ pearls), Inventories, Statuses (Cursed Tiki effects a character's stats), Holiday indicators for seasonal prompts, you bet your ass I have a column for each character's MBTI / Enneagram, friendships between characters, even across media sources if it works.
Testing laboratory to check if new characters I've found would fit here (linked because it wouldn’t upload to the post for some reason?)
Team Puzzle the F/os are working on, it's 82% done ~ Each piece is picked up when a certain prompt comes up.
I may not have a self-insert made special for self-shipping or a detailed story of how I met any of 'em / life together like most you have, which is super cool. But I've got this.
I realize some folks still may be too shy to contact me, so here's some useful formulas to start with -
=IF(A1="word", "Yes it is word" , "Nope it's not word") ^ You can nest this formula like there's no tomorrow. Can be used with below for random chance. Ex. Under 50 is tails, over is heads
=if(iserror(SEARCH("thing to find",A1)), "Not contain", "Contains" ) ^ Similar to above, checks if a cell CONTAINS a cell instead of is EXACTLY that word
=RANDBETWEEN(1,100) ^ Classic out of 100 randomizer, but numbers can be adjusted
=CHOOSE(RANDBETWEEN(1,2), "Apple", "Banana") ^ Another random choice. Can def have more than 2
=INDIRECT("column letter" & cell with row number) ^ This thing is very smart, let’s you outsource the location of a cell
Say these are all in column A - Red (A1), Blue (A2), Yellow (A3)
=INDIRECT("A" & B1)
Then in B1 or something you have either the number 1, 2, or 3. It will use that number to know where to grab the info from :)
I use this in my main Mobile RE viewport, the row number is randomized outside of it, also allows info / notes on specific prompts to come up in a separate cell since they use the same row but a different column
=INDEX(HP!D1:D88 , L21 , 1 )
^ Incredibly similar to the above “indirect” formula. I grabbed this straight from the sheet. L21 is like B1 in the other formula, and the HP!D1:D88 is like “A” in the other, but this one grabs info ACROSS SHEETS, HP is in a different tab than this formula is in! Very useful
=index(E129:M129, randbetween(1, counta(E129:M129) ) ) ^ Big ol' text randomizer. This one is for a single prompt tho
And that's like 99% of my formulas, I probably have minor ones floating around tho. Reblog if you've been inspired / want to contact me to make your own / want to spread this around!
#self shipping#self ship#oc x canon#oc shipping#self insert#i hope this is useful to someone or other#reader x canon
3 notes
·
View notes
Text
350+ TOP PYTHON Interview Questions and Answers
PYTHON Interview Questions for freshers & experienced :-
1) What Is Python? Python is an interpreted, interactive, object-oriented programming language. It incorporates modules, exceptions, dynamic typing, very high level dynamic data types, and classes. Python combines remarkable power with very clear syntax. It has interfaces to many system calls and libraries, as well as to various window systems, and is extensible in C or C++. It is also usable as an extension language for applications that need a programmable interface. Finally, Python is portable: it runs on many Unix variants, on the Mac, and on PCs under MS-DOS, Windows, Windows NT, and OS/2. 2) What are the different ways to create an empty NumPy array in python? There are two methods we can apply to create empty NumPy arrays. The first method. import numpy numpy.array() The second method. # Make an empty NumPy array numpy.empty(shape=(0,0)) 3) Can’t concat bytes to str? This is providing to be a rough transition to python on here f = open( ‘myfile’, ‘a+’ ) f.write(‘test string’ + ‘\n’) key = “pass:hello” plaintext = subprocess.check_output() print (plaintext) f.write (plaintext + ‘\n’) f.close() The output file looks like: test string 4) Expline different way to trigger/ raise exception in your python script? Raise used to manually raise an exception general-form: raise exception-name (“message to be conveyed”). voting_age = 15 if voting_age output: ValueError: voting age should be at least 19 and above 2.assert statements are used to tell your program to test that condition attached to assert keyword, and trigger an exception whenever the condition becomes false. Eg: a = -10 assert a > 0 #to raise an exception whenever a is a negative number Output: AssertionError Another way of raising an exception can be done by making a programming mistake, but that is not usually a good way of triggering an exception 5) Why is not__getattr__invoked when attr==’__str__’? The base class object already implements a default __str__ method, and __getattr__function is called for missing attributes. The example as it we must use the __getattribute__ method instead, but beware of the dangers. class GetAttr(object): def __getattribute__(self, attr): print(‘getattr: ‘ + attr) if attr == ‘__str__’: return lambda: ‘’ else: return lambda *args: None A better and more readable solution to simply override the __str__ method explicitly. class GetAttr(object): def __getattr__(self, attr): print(‘getattr: ‘ + attr) return lambda *args: None def __str__(self): return ‘’ 6)What do you mean by list comprehension? The process of creating a list performing some operation on the data so that can be accessed using an iterator is referred to as list comprehension. EX: Output: 65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90 7) What will be the output of the code:def foo (i=)? i.append (1) return i >>> foo () >>> foo () Output: The argument to the function foo is evaluated once when the function is defined However since it is a list on every all the list is modified by appending a 1 to it. 8) How to Tic tac toe computer move? Below The code of computer move in the game tic tac toe in python def computermove(board,computer,human): movecom=” rmoves=rd(0,8) for movecom in legalmoves(board): board=computer if winner(board)==computer: return movecom board=” for movecom in legalmoves(board): board=human if winner(board)==human: return movecom board=” while rmoves not in legalmoves(board): rtmoves=rd(0,8) return rmoves 9) Explain about ODBC and python? ODBC (Open Database Connectivity) API standard allows the connections with any database that supports the interface such as the PostgreSL database or Microsoft access in a transparent manner Three types of ODBC modules for python: PythonWin ODBC module – limited development mxODBC – a commercial product pyodbc – This is open source python package 10) How to implement the decorator function, using dollar ()? Code: def dollar(fn): def new(*args): return ‘$’ + str(fn(*args)) return new @dollar def price(amount, tax_rate): return amount + amount*tax_rate print price(100,0.1) output: $110
PYTHON Interview Questions 11) How to count the number of instance? You have a class A, you want to count the number of A instance. Hint: use staticmethod Example class A: total = 0 def __init__(self, name): self.name = name A.total += 1 def status(): print “Number of instance (A) : “, A.total status = staticmethod(status) a1 = A(“A1”) a2 = A(“A2”) a3 = A(“A3”) a4 = A(“A4”) A.status() Output: The number of instance (A) : 4 12) What are the Arithmetic Operators that Python supports? ‘+’ : Addition ‘-’ : Subtraction ‘*’ : Multiplication ‘/’: Division ‘%’: Modulo division ‘**’: Power Of ‘//’: floor div Python does not support unary operators like ++ or – operators. Python supports “Augmented Assignment Operators”. i.e., A += 10 Means A = A+10 B -= 10 Means B = B-10 13) How do you reload a Python module? All that needs to be a module object to the imp.reload() function or just reload() in Python 2.x, and the module will be reloaded from its source file. Any other code references symbols exported by the reloaded module, they still are bound to the original code. 14) How does Python handle Compile-time and Run-time code checking? Python supports compile-time code checking up to some extent. Most checks for variable data types will be postponed until run-time code checking. When an undefined custom function is used, it will move forward with compile-time checking. During runtime, Python raises exceptions against errors. 15) What are Supporting Python packages for data science operations? Pandas: A package providing flexible data structures to work with relational or labeled data. NumPy: A package that allows working with numerical based data structures like arrays and tensors. Matplotlib: A 2D rendering engine written for Python. Tensorflow: A package used for constructing computational graphs. 16) What are the ones that can be used with pandas? A python dict, ndarray or scalar values can be used with Pandas. The passed index is a list of axis labels. 17) How To Add an Index, Row or Column to a Pandas DataFrame? The index can be added by calling set_index() on programmer DataFrame. For accessing rows, loc works on labels of programme index, iloc works on the positions in programme index, it is a more complex case: when the index is integer-based, programmer passes a label to ix. 18) How To Create an Empty DataFrame? The function that programmer will use is the Pandas Dataframe() function: it reuires the programmer to pass the data that programmer wants to put in, the indices and the columns. 19) Does Pandas Recognize Dates When Importing Data? Yes. but programmer needs to help it a tiny bit: add the argument parse_dates when programmer by reading in data from, let is say, a comma-separated value (CSV) file. 20) How to convert a NumPy array to a Python List? Use tolist(): import numpy as np >>> np.array(,]).tolist() , ] 21) How to set the figure title and axes labels font size in Matplotlib? Functions dealing with text like label, title, etc. accept parameters same as matplotlib.text.Text. For the font size you can use size/fontsize: 39) What is dictionary in Python? The built-in datatypes in Python are called a dictionary. It defines one-to-one Relationship between keys and values. It contains a pair of keys and their corresponding values. Dictionaries are indexed by keys. It is a collection which is unordered, changeable and indexed. Let’s take an example: The following example contains some keys. State, Capital,Language. Their corresponding values are Karnataka, Bangalore, and Kannada respectively. Dict={ ‘Country’:’Karnataka’,’Capital’:’Bangalore’,’Launguage’:’Kannada’} print dict Karnataka Print dict Bangalore Print dict Kannada 40) How memory is managed in Python? Python private heap space manages python memory. Python heap has all Python objects and data structures. Access to this private heap is restricted to programmer also Python private heap is taken care by the interpreter. The core API gives access to some tools for the programmer to code. Python memory manager allocates python heap space. 41)What is the output of this following statement? f=none for i in range(5); with open(“data.txt”, ”w”) as f: if I>1: break print f.closed A) True B) False C) None D) Error Ans: A 42) Write a coding in Find a Largest Among three numbers? num1 = 10 num2 = 14 num3 = 12 if (num1 >= num2) and (num1 >= num3): largest = num1 elif (num2 >= num1) and (num2 >= num3): largest = num2 else: largest = num3 print(“The largest number between”,num1,”,”,num2,”and”,num3,”is”,largest) Output: The largest Number is 14.0 43) What is Lambda in Python? lambda is an one line anonymous function, Example: Sum=lambda i,c:i+c 44) What is the difference between list and tuples? Lists are the mutable elements where we can able to perform the task in the existed variable. Lists can able to reduce the utilization of memory Tuples are immutable so it can execute faster when compared with list. But it will wastes the memory. 45) What are the key features of Python? The python doesn’t have any header files It doesn’t have any structure or syntax except the indentation. It can execute the instructions fastly because of the RISC architecture. It consumes only less memory because of no internal executions. It doesn’t have any compilers compilation can be done at the time of the program. 46) How to delete a file in Python? In Python, Delete a file using this command, os.unlink(filename) or os.remove (filename) 47) What is the usage of help() and dir() function in Python? Help() and dir() both functions are accessible from the Python interpreter used for viewing a consolidated dump of built-in functions. Help() function: The help() function is used to display the documentation string and also facilitates you to see the help related to modules, keywords, attributes, etc. 48) Which of the following statements create a dictionary? (Multiple Correct Answers Possible) a) d = {} b) d = {“john”:40, “peter”:45} c) d = {40:”john”, 45:”peter”} d) d = (40:”john”, 45:”50”) Ans: All of the above 49) Which of the following is an invalid statement? a) abc = 1,000,000 b) a b c = 1000 2000 3000 c) a,b,c = 1000, 2000, 3000 d) a_b_c = 1,000,000 Ans: c 50) What is the output of the following? try: if ‘1’ != 1: raise “someError” else: print(“someError has not occured”) except “someError”: print (“someError has occured”) a) someError has occured b) someError has not occured c) invalid code d) none of the above Ans: b 51) What is the maximum possible length of an identifier? a) 31 characters b) 63 characters c) 79 characters d) None of the above Ans: d 52) Differentiate list and tuple with an example? difference is that a list is mutable, but a tuple is immutable. Example: >>> mylist= >>> mylist=2 >>> mytuple=(1,3,3) >>> mytuple=2 TypeError: ‘tuple’ object does not support item assignment 53) Which operator will be helpful for decision making statements? comparison operator 54) Out of two options which is the template by default flask is following? a) Werkzeug b) Jinja2 Ans : b 55) Point out the use of help() function Help on function copy in module copy: copy(x) Shallow copy operation on arbitrary Python objects. 56) From below select which data structure is having key-value pair ? a.List b.Tuples c.Dictionary Ans : c 57) Differentiate *args and **kwargs? *args : We can pass multiple arguments we want like list or tuples of data **kwargs : we can pass multiple arguments using keywords 58) Use of Negative indices? It helps to slice from the back mylist= >>>mylist 6 59) Give an example for join() and split() funcitons >>> ‘,’.join(‘12345’) ‘1,2,3,4,5’ >>> ‘1,2,3,4,5’.split(‘,’) 60) Python is case sensitive ? a.True b.False Ans : a 61) List out loop breaking functions break continue pass 62) what is the syntax for exponentiation and give example? a**b 2**3 = 8 63) Which operator helps to do addition operations ? arithmetic operator 64) How to get all keys from dictionary ? dictionary_var.keys() 65) Give one example for multiple statements in single statement? a=b=c=3 66) What is the output for the following code? >> def expandlist(val, list=): list.append(val) return list >>> list1 = expandlist (10) >>> list2 = expandlist (123,) >>> list3 = expandlist (‘a’) >>> list1,list2,list3 Ans : (, , ) 67) Number of argument’s that range() function can take ? 3 68) Give an example to capital first letter of a string? a=’test’ print a.upper() Test 69) How to find whether string is alphanumeric or not? str = “hjsh#”; print str.isalnum() Ans :False 70) Which method will be used to delete a file ? os.remove(filename) 71) What is difference between match & search in regex module in python? Match Checks for a match only at the beginning of the string, while search checks for a match anywhere in the string. 72) Can we change tuple values? If yes, give an example. Since tuple are immutable, so we cannot change tuple value in its original form but we can convert it into list for changing its values and then convert again to tuple. Below is the example: my_tuple=(1,2,3,4) my_list=list(my_tuple) my_list=9 my_tuple=tuple(my_list) 73) What is purpose of __init__ in Class ? Is it necessary to use __init__ while creating a class ? __init__ is a class contructor in python. __init__ is called when we create an object for a class and it is used to initialize the attribute of that class. eg : def __init__ (self, name ,branch , year) self.name= name self.branch = branch self.year =year print(“a new student”) No, It is not necessary to include __init__ as your first function every time in class. 74) Can Dictionary have a duplicate keys ? Python Doesn’t allow duplicate key however if a key is duplicated the second key-value pair will overwrite the first as a dictionary can only have one value per key. For eg : >>> my_dict={‘a’:1 ,’b’ :2 ,’b’:3} >>> print(my_dict) {‘a’: 1, ‘b’: 3} 75) What happened if we call a key that is not present in dictionary and how to tackle that kind of error ? It will return a Key Error . We can use get method to avoid such condition. This method returns the value for the given key, if it is present in the dictionary and if it is not present it will return None (if get() is used with only one argument). Dict.get(key, default=None) 76) What is difference b/w range and arange function in python? numpy.arange : Return evenly spaced values within a given interval. Values are generated within the half-open interval stop, dtype=None) Range : The range function returns a list of numbers between the two arguments (or one) you pass it. 77) What is difference b/w panda series and dictionary in python? Dictionaries are python’s default data structures which allow you to store key: value pairs and it offers some built-in methods to manipulate your data. 78) Why it need to be create a virtual environment before staring an project in Django ? A Virtual Environment is an isolated working copy of Python which allows you to work on a specific project without worry of affecting other projects. Benefit of creating virtualenv : We can create multiple virtualenv , so that every project have a different set of packages . For eg. if one project we run on two different version of Django , virtualenv can keep thos projects fully separate to satisfy both reuirements at once.It makes easy for us to release our project with its own dependent modules. 79) How to write a text from from another text file in python ? Below is the code for the same. import os os.getcwd() os.chdir(‘/Users/username/Documents’) file = open(‘input.txt’ ,’w’) with open(“output.txt”, “w”) as fw, open(“input.txt”,”r”) as fr: 80) what is difference between input and raw_input? There is no raw_input() in python 3.x only input() exists. Actually, the old raw_input() has been renamed to input(), and the old input() is gone, but can easily be simulated by using eval(input()). In python 3.x We can manually compile and then eval for getting old functionality. python2.x python3.x raw_input() input() input() eval(input()) 81) What are all important modules in python reuired for a Data Science ? Below are important module for a Data Science : NumPy SciPy Pandas Matplotlib Seaborn Bokeh Plotly SciKit-Learn Theano TensorFlow Keras 82) What is use of list comprehension ? List comprehensions is used to transform one list into another list. During this process, list items are conditionally included in the new list and each items are transformed as reuired. Eg. my_list= my_list1= Using “for “ loop : for i in my_list1: my_list.append(i*2) Using List comprehension : my_list2= print(my_list2) 83) What is lambda function ? lambda function is used for creating small, one-time and anonymous function objects in Python. 84) what is use of set in python? A set is a type of python data Structure which is unordered and unindexed. It is declared in curly braces . sets are used when you reuired only uniue elements .my_set={ a ,b ,c,d} 85) Does python has private keyword in python ? how to make any variable private in python ? It does not have private keyword in python and for any instance variable to make it private you can __ prefix in the variable so that it will not be visible to the code outside of the class . Eg . Class A: def __init__(self): self.__num=345 def printNum(self): print self.__num 86) What is pip and when it is used ? it is a package management system and it is used to install many python package. Eg. Django , mysl.connector Syntax : pip install packagename pip install Django : to install Django module 87) What is head and tail method for Data frames in pandas ? Head : it will give the first N rows of Dataframe. Tail : it will give last N rows of Dataframe. By default it is 5. 88) How to change a string in list ? we can use split method to change an existing string into list. s= ‘Hello sam good morning ’ s.split() print(s) 89) How to take hello as output from below nested list using indexing concepting in python. my_list=, 4,5]],3,4] Ans : my_list print(my_list) 90) What is list when we have to use ? Lists always store homogeneous elements. we have to use the lists when the data is same type and when accessing is more insteading of inserting in memory. 91) What is dict when we have to use ? Dict is used to store key value pairs and key is calculated using hash key. This is used when we want to access data in O(1) time as big O notation in average case. Dict I used in u can say super market to know the price of corresponding while doing billing 92) What is tuple when we have to use ? Tuple is hetrogenous and we have to use when data is different types. 93) Is String Immutable ? Yes because it creates object in memory so if you want to change through indexing it will throw an exception since it can’t be changes I,e immutable. 94) How to handle Exception ? We can handle exceptions by using try catch block . we can also else block in python to make it executed based on condition. 95) Will python work multiple inheritance? Yes it works .by seuentially referring parent class one by one. 96) Will class members accessible by instances of class? Yes by referring corresponding attributes we can access. 97) What are Special methods in python and how to implement? Special methods in python are __init__,__str__,__iter__,__del__ __init__-it will initialize when class loads. __str__-It is used to represent object in a string format. __iter__-it I used to define iteration based on reuirements. __del__-It is used to destroy object when it is not reuired for memory optimization. 98) How to handle deadlock in python. By providing synchronization methods so that each thread access one at a time.It will lock another thread until thread fine it execution. 99) How for loop will works in python? For loop internally calls iter method of an object for each call. 100) What is List comprehension how to define it and when to use? List Comprehensions are expression based iteration. So we have to give expression and then provide loop and provide if condition if needed. We have to use when we want to define in such a way that write the code in a compact way. 101) What is set when we have to use? Set is used to define uniue elements without duplicates. So if you have lump of data and we are searching through email record. By using set we can get the uniue elements. 102) How django works ? Django will take an url from frontend and look for url reolvers and url will ap corresponding view and if data to be handled it will use certain model to make any database transactions and give repone via view and then passs to UI. Or django template 103) Is python pure object oriented programming ? Yes in python all types are stored a objects. 104) What are packages in python which are commonly used explain one ? The packages used are os, sys,time,tempfile,pdb, Os –it is used for file and directories handling. Pdb-It is used to debug the code to find the root cause of issue. 105) How will you merge 2 dictionaries in python? a = {1:’1’} , b={2:’2’} c= {**a,**b} 106) What is the other way of checking truthiness? These only test for truthiness: if x or y or z: print(‘passed’) if any((x, y, z)): print(‘passed’) 107) How will you verify different flags at once? flags at once in Python v1,v2,v3 = 0, 1, 0 if v1 == 1 or v2 == 1 or v3 == 1: print(‘passed’) if 1 in (v1, v2, v3): print(‘passed’) 108) What happens when you execute python == PYTHON? You get a Name Error Execution 109) Tool used to check python code standards? Pylint 110) How strings can be sliced? They can be generally treated as arrays without commas. Eg: a = “python” a -> i can be any number within the length of the string 111) How to pass indefinite number of arguments to any function? We use **args when we don’t know the number of arguments to be passed 112) In OOPS what is a diamond problem in inheritance? During multiple inheritance, when class X has two subclasses Y and Z, and a class D has two super classes Y and Z.If a method present in X is overridden by both Y and Z but not by D then from which class D will inherit that method Y or Z. 113) Among LISTS,SETS,TUPLES which is faster? Sets 114) How Type casting is done in python? (Str -> int) s = “1234” # s is string i = int(s) # string converted to int 115) How python maintains conditional blocks? Python used indentation to differentiate and maintain blocks of code 116) Write a small code to explain repr() in python ? Repr gives the format that can be read by the compiler. Eg: y=2333.3 x=str(y) z=repr(y) print ” y :”,y print “str(y) :”,x print “repr(y):”,z ————- output y : 2333.3 str(y) : 2333.3 repr(y) : 2333.3000000000002 117) How to encrypt a string? str_enc = str.encode(‘base64’, ‘strict’) 118) Functions are objects -> Explain ? # can be treated as objects def print_new(val): return val.upper() print ( print_new(‘Hello’)) yell = print_new print yell(‘different string’) 119) Explain the synbtax to split a string in python? Str.split(separator,max_split) 120) How can you identify the data type of any variable in python? Use type(var) 121) What does MAP function in python do? map() returns a list of the results after it applys the function to each item in a iterable data type (list, tuple etc.) 122) What does the enum function in python do? When we need to print the vars index along when you iterate, we use the enum function to serve this purpose. 123) Explain assert in action? assert “py” == “PY”, “Strings are not eual” 124) How does pop function works in set data types? Pop deletes a random element from the set 125) Is Python open source? If so, why it is called so? Python is an open source programming language. Because Python’s source code (the code in which Python software is written) is open for all and anyone can have a look at the source code and edit. 126). Why Python is called portable? Because we can run Python in wide range of hardware platforms and has similar interfaces across all the platforms 127) How to give comments in Python? Using Hashes (#) at the starting of a line 128) How to create prompt in the console window? Using input function 129) How to write multiple statements in a single line in Python? Using semicolon between the statements 130) List out standard datatypes in Python Numbers, string, list, tuple, dictionary 131) Which standard datatype in Python is immutable? tuple 132) What is indexing? Explain with an example Indexing is the numbering of characters in string or items in list, tuple to give reference for them. It starts from 0. Str = “Python”. The index for P is 0, y is 1, t is 2 and goes on. 133).Which statement is used to take a decision based on the comparison? IF statement 134) List out atleast two loop control statements break, continue, pass 135) What is the result of pow(x,y) X raised to the power Y 136) What is the difference between while and for loop? While loops till the condition fails, for loops for all the values in the list of items provided. 137) Which method removes leading and trailing blanks in a string? strip – leading and trialing blanks, lstrip – leading blanks, rstrip – trailing blanks 138) Which method removes and returns last object of a list? list.pop(obj=lst) 139) What is argument in a function? Argument is the variable which is used inside the function. While calling the function we need to provide values to those arguments. 140) What is variable length argument in function? Function having undefined no. of arguments are called variable length argument function. While calling this function, we can provide any no. of arguments 141) What is namespace? Namespace is the dictionary of key-value pairs while key is the variable name and value is the value assigned to that variable. 142) What is module? Module is a file containing python code which can be re-used in a different program if it is a function. 143) Which is the default function in a class? Explain about it – _init_. It is called class contructor or initialization method. Python calls _init_ whenever you create a instance for the class 144) What is docstring? How to define it? docstring is nothing but a comment inside the block of codes. It should be enclosed inside “”” mark. ex: “”” This is a docstring ””” 145) What is the default argument in all the functions inside a class? Self 146) How to send a object and its value to the garbage collection? del objname 147) How to install a package and import? In DOS prompt, run pip install package_name and run import package_name in editor window in Python’s IDE. 148) Name the function which helps to change the files permission os.chmod 149) Which is the most commonly used package for data importing and manipulation? Pandas 150) Will python support object oriented? Yes, it will support by wrapping the code with objects. 151) IS python can be compatible with command prompt? Yes, it can be accessed through command prompt. 152) How Lists is differentiated from Tuples? List are slow, can be edited but Tuples are fast and cannot be edited. 153). Use of NUMPY package? It is fastest, and the package take care of the number calculations. 154). Uses of python? Pie charts, web application, data modeling, automation and Cluster data. 155) Does python interact with Database? Yes, it interfaces to most of the Databases. 156) Is python is intended oriented? Yes, it will throw error if it is not in seuence. 157) How is Garbage handled in python? It will be automatically handle the garbage after the variable is used. 158) How will you check python version? Using python –version. 159) How will you uit the python? Using exit() 160) Does Python has any command to create variable? No, just (x =244) 161) What is complex type in python? It is mixture of variable and number. 162) Casting in python? To make String use command str(2) = ‘2’ 163) What is strip in python? Used to remove white spaces in String 164) Other String literals? Lower, upper, len, split, replace. 165) Python operators? Arithmetic, Assignment, Comparison, Logical, Identity, Membership and Bitwise. 166) Membership operator in python? In and not in. 167) Lambda in python? Can take only one expression but any number of Argument. 168) Dict in python? It is something like key and value pair as Map in java. 169) Does python has classes? In python all are denoted as some classes. 170) Multi threading on python? It is a package in python and it use GIL to run the thread one after the other. But isn’t it being not good to use here. 171) What is python private heap space? It is a inbuild garbage collection like java and this space can be used by the developer. 172) Does python support inheritance? Yes, it supports all forms of inheritance single, multiple, hierarchical and multi-level 173) Benefits of Flask? It is light weight and independent package. Mainly a web micro framework. 174) How dir() function is used in python? The defined symbols are defined here. 175) Will exit method in python de allocate the global namespace? No, it has a specific mechanism which it follows as an individual portion. 176) Has python has monkey patching concept within? Yes of course, it does dynamic transactions during the run time of the program. 177) args vs kwargs? Args – don’t know how many arguments are used. Kwargs- don’t know how many keywords are used. 178) use of isupper keyword in python? This will prompt the upper keyword of any character in a string literal. 179) pickling vs unpickling? If the objects translated from string then it seems to be pickling If the String is dumped to objects then it seems to un picking 180) What is py checker in python? It is tool to uantitatively detects the bugs in source code. 181) What are the packages? NUMPY, SCIPY, MATLAB, etc 182) Pass in Python? IT is a namespace with no character and it can be moved to next object. 183) How is unit test done in python? It is done in form of Unittest. This does major of testing activity. 184) Python documentation is called? DoctString such as AI, Python jobs ,Machine learning and Charts. 185) Convert Sting to number and viceversa in python? Str() for String to number and oct() for number to string. 186) Local vs Global in python? Anything inside the function body is local and outside is global as simple as that. 187) How to run script in python? Use py command or python command to run the specific file in Unix. 188) What is unlink in python? This is used to remove the file from the specified path. 189) Program structure in python? Always import the package and write the code without indention 190) Pyramid vs Django? Both used for larger application and Django comes with a ORM framework. 191) Cookies in python? Sessions are known as cookies here it is used to reuest from one object to other. 192) Different types of reuest in python? Before reuest – it is used to passes without the arguments. After reuest – it is used to pass the reuest and response will be generated. Tear down reuest – it is used as same as past but it does not provide response always and the reuest cant be changed. 193) How is fail over mechanism works in python? Once the server shoots the fail over term then it automatically tends to remove the packet each on the solid base and then re shoot again on its own. Socket wont get removed or revoked from the orgin. 194) Dogpile mechanism explain? Whenever the server host the service and when it gets multiple hits from the various clients then the piles get generated enormously. This effect will be seems as Dogpile effect. This can be captured by processing the one hit per time and not allowed to capture multiple times. 195) What is CHMOD 755 in python? This will enhance the file to get all the privileges to read write and edit. 196) CGI in Python? This server mode will enable the Content-type – text/html\r\n\r\n This has an extension of .cgi files. This can be run through the cgi command from the cmd prompt. 197) Sockets explain? These are the terminals from the one end to the other using the TCP, UDP protocols this reuires domain, type, protocol and host address. Server sockets such as bind, listen and accept Client socket such as connect. 198) Assertions in python? This is stated as the expression is hits when we get the statement is contradict with the existing flow. These will throw the error based on the scenario. 199) Exceptions in python? This is as same as JAVA exceptions and it is denoted as the try, catch and finally this also provides the user defined expression. 200) What made you to choose python as a programming language? The python programming language is easy to learn and easy to implement. The huge 3rd party library support will make python powerful and we can easily adopt the python 201) what are the features of python? The dynamic typing Large third party library support Platform independent OOPs support Can use python in many areas like machine learning,AI,Data science etc.. 202) How the memory is managed in python? The private heap space is going to take care about python memory. whenever the object is created or destroyed the heap space will take care. As a programmer we don’t need to involve in memory operations of python 203) What is the process of pickling and unpicling? In python we can convert any object to a string object and we can dump using inbuilt dump().this is called pickling. The reverse process is called unpicling 204). What is list in python? A list is a mutable seuential data items enclosed with in and elements are separated by comma. Ex: my_list=] In a list we can store any kind of data and we can access them by using index 205) What is tuple in python? A tuple is immutable seuential data element enclosed with in () and are separated by comma. Ex: my_tuple=(1,4,5,’mouli’,’python’) We use tuple to provide some security to the data like employee salaries, some confidential information 206) Which data type you prefer to implement when deal with seuential data? I prefer tuple over list. Because the tuple accessing is faster than a list because its immutability 207) What are advantages of a tuple over a list? We can use tuple as a dictionary key because it is hash able and tuple accessing very fast compare to a list. 208) What is list comprehension and dictionary comprehension and why we use it? A list comprehension is a simple and elegant way to create a list from another list. we can pass any number of expressions in a list comprehension and it will return one value, we can also do the same process for dictionary data types Data= Ex: new_list = 209) What is the type of the given datatype a=1? a)int b)Tuple c)Invalid datatype d)String Ans:b 210) Which is the invalid variable assignment from the below? a)a=1,2,3 b)The variable=10 c)the_variable=11 d)none of the above Ans:b 211) Why do we use sets in python? Generally we use sets in python to eliminate the redundant data from any data. And sets didn’t accept any mutable data types as a element of a set Ex: my_set={123,456,’computer’,(67,’mo’)} 212) What are the nameless functions in python? The anonymous functions are called nameless functions in python. We can also call it as lambda function. The lambda functions can be called as a one liner and can be created instantly Syntax: lambda arguments: expression Ex: hello=lambda d:d-(d+1) To call the lambda function Hello(5) 213) What is map and filter in python? Map and filter are called higher order functions which will take another functions as an argument. 214) What is the necessity to use pass statement in python program? Pass is no operation python statement. we can use it while we are implementing the classes or functions or any logic. If class is going be define later in the development phase we can use pass statement for the class to make it syntactically make it valid. Ex: def library(): Pass 215) What is *kwargs and **kwargs? Both are used in functions. both are allowed to pass variable number of arguments to a function only difference is *kwargs is used for non-key word arguments and **kwargs is used for key word arguments Ex: def kwargs(formal_arg, *kwargv): print(“first normal arg:”, formal_arg) for arg in kwargv: print(“another arg through *argv:”, arg) kwargs(‘mouli’, ‘ramesh’, ‘rajesh’, ‘kanna’) 216) Explain about negative indexing? Negative indexing is used in python seuential datatypes like list,string,tuple etc We can fetch the element from the back with out counting the list index Ex: list1 217) What is file context manager? To open a file in safe mode we use WITH context manager. This will ensure the file crashing from some exceptions. we don’t need to close the file explicitly Ex: with open(‘sample.txt’,’w’) as f: Pass 218) Explain between deep and shallow copy? The deep copy , copy the object with reference so that if we made any changes on the original copy the reference copy will be effected, shallow copy ,copy the object in a separate memory so that if we do any changes on original it won’t effect the shallow copy one 219) How can you make modules in python? First we need to save the file with somename.py Second import the somename.py in the newfile.py, so that we can access the somename.py functions in the newfile.py. so that somename.py acts as a module. Even we can share our module to the rest of the world by registering to PYPY community 220) Explain about default database with python? SLite3 comes with python3. It is light weight database for small scale of application 221) What are different modes in file operations? There are 3 modes in python file operations read, write and append sometimes we can do both at a time. read(),readline(),readlines() are the inbuilt functions for reading the file write() is inbuilt function for writing to the file 222) What is enumerate() explain its uses? Enumerate is a built in function to generate the index as we desired in the seuential datatypes Ex: for c ,i in enumerate(data,p): Print(c,i) Here p is optional if we don’t want it we can eliminate it 223) Can we use else with for loop in python? Yes we can use. once all the for loop is successfully executed the else part is going to execute, If there are any error occurs or any break happened in the loop then the else is not going to execute Ex: for I in list1: print(i) Else: print(execution done) even we can use else with while also 224) What is type() and id() will do? The type() will give you the information about datatype and id() will provide you the memory location of the object 225) What is decorators? The decorators are special functions which will very useful when tweaking the function or class.it will modify the functionality of another function. 226) Explain about different blocks in exception handling? There are three main blocks in python exception handling Try Except Finally In the try block we will write all the code which can be prone to error, if any error occurred in this block it will go to the except block. If we put finally block also the execution will hit the finally block. 227) Explain inheritance in python? Inheritance will allow the access to the child call meaning it can access the attributes and methods of the base. There are many types in the inheritance Single inheritance: in this one, have only one base class and one derived class Multilevel inheritance: there can be one or more base classes and one more derived classes to inherit Hierarchical: can derive any number of child classes from single base class Multiple: a single derived can be inherited from any number of base classes 29.write sorting algorithm in python for given dataset= using list comprehension x= print(x.sort()) 228) Explain about multi-threading concept in python? Multi-threading process can be achieved through the multiprocess inbuilt module. GIL(global interpreter lock ) will take care about the multiprocessing in python. simultaneously there are several threads can be run at same time. The resource management can be handled by GIL. 229) Can we do pattern matching using python? Yes, we can do it by using re module. like other programming languages python has comes with powerful pattern matching techniue. 230) What is pandas? Pandas is data science library which deal with large set of data. pandas define data as data frame and processes it. Pandas is a third party library which we need to install. 231) What is pip? Pip is a python package installer. Whenever we need third party library like paramiko,pandas etc We have to use pip command to install the packages Ex: pip install paramiko 232) What is the incorrect declaration of a set? a)myset={} b)myset=set() c)myset=set((1,2,3)) d)myset={1,2,3} Ans:a 233) What is OS module will do in python? OS module is giving access to python program to perform operating system operations like changedirectory, delete or create. Ex: import os os.cwd() 234) What is scheduling in threading? Using scheduling we can decide which thread has to execute first and what is the time to execute the thread. And it is highly dynamic process 235) What is the difference between module and package? A package is folder which can have multiple modules in it. We can import module by its package name.module name 236) How we can send email from python? We can use smtplib inbuilt module to define smtp client, that can be used to send email 237) What is TKIner? TKIner is a python inbuilt library for developing the GUI 238) How can you prevent abnormal termination of a python program We can prevent the abnormal termination by using the exception handling mechanism in python. Try , except and finally are the key words for handling the exception. we can raise our own exceptions in the python. They are called user exceptions 239) what module is used to execute linux commands through the python script and give us with one example We can use OS module to execute any operation system commands. We have to import the OS module first and then give the commands Ex: import os Print(os.system(‘nslookup’+’127.10.45.00’)) 240) what is the process to set up database in Django First we need to edit the settings.py module to set up the database. Django comes with SLite database by default, if we want to continue with default database we can leave settings.py as it is. If we decide to work with oracle or other kind of databases like oracle your database engine should be ‘django.db.backends.oracle’. if it is postgresl then the engine should ‘django.db.backends.postgresl_psycopg2’. We can add settings like password, name host etc. 241) what is Django template A django template is a simple text file which is used to create HTML,CSV or XML. A template contains variables that is replaced with values when we evaluates it 242) what is the uses of middleware in Django? Middleware is responsible for user authentication, session management . 243) what is Django architecture Django architecture contains models ,views, templates and controller The model describes the database schema and data structure. the views retrieves data from model and pass it to the template. Templates are described how the user see it. controller is the logic part and heart of the Django 244) List some of the data science libraries in python NumPy Pandas SciPy Matplotlib 245) How do substitute a pattern in a string using re module Import re >>> re.sub(‘’, ‘o’, ‘Space’) ‘Spooe’ >>> re.sub(‘’, ‘n’, re.sub(‘’, ‘o’, ‘Space’)) ‘Spoon’ 246) What is random module will do in python and what are the functions we can apply on random module Random module will gives the random number from the specific range. Every time we execute we will get the random number Randrange() Randint() Choice() Shuffle() Uniform() Are some of the useful functions in random module 247) What are the noted modules of python in terms of networking Paramiko, netmiko, pexpect etc These module will create a ssh connection between server and the program 248) What is beautifulSoup module will do in python? We are using the module for pulling the data from HTML and XML files 249) What is reuests module will do? It is a python http library. The aim of the reuests module is to make http reuests simpler and more human friendly Ex: Import reuests r = reuests.get(‘https://api.github.com/user’, auth=(‘user’, ‘pass’)) r.status_code 200 >>> r.headers ‘application/json; charset=utf8’ >>> r.encoding ‘utf-8′ >>> r.text # doctest: +ELLIPSIS u'{“type”:”User”…’ >>> r.json() # doctest: +ELLIPSIS {u’private_gists’: 419, u’total_private_repos’: 77, …} 250) What are the basic datatypes in python? Python datatypes include int, float, strings, lists, tuples, sets, dictionaries. 251) How Manages to Python Handle Memory Management? Python is a separate on heaps to keep its memory. So the heap contains all the Python information and these data structures. And it’s the Python created handler that manages the Individual heap. Python employs a built-in garbage receiver, which salvages all the available memory including offloads it to some heap space. 252) What is means by string Python? A string in Python is a mixture of the alpha-numeric volume of characters. They are clear of objects Volume. It suggests that both don’t help move once all get assigned a value. Python provides to programs of join(), replace(), or split() to alter strings variable. 253) What does the meaning of Slicing in python? Python Slicing is defined as Lists of Tuples and Arrays Volume function. The Lists element function has a default bit fo the functionality while slicing. If there is a no conseuence of before that first colon, it expects to begin at the start index of the list. 254) Definition of %S In Python? Python it has to been guide for formatting of any value into a string volume function. It may include uite complex characters. It’s One of the popular usages of the start contents into a string including the %s form specifier. The %S formatting helps Python in a similar variable volume syntax as the C function printf(). 255) what does a function of python programming? A function is an object which describes a block of the system and is a reusable object. It takes modularity to a performance code program and a higher level of code reusability. Python has to give us several built-in functions Volume such as print() function volume and it gives the ability to perform a user-defined function. 256) How to write a functioning volume for python? Step-1: To begin the function Volume of start writing the function with the keyword and then specify the Volume function name. Step-2: We can immediately give the reasons and enclose them doing the parentheses. Step-3: After pushing an enter, we can do it determine the coveted Python records for execution. 257) What is means by Call function in Python? A python function value gets treated because of a callable object. It can provide any thoughts value and also pass a value or increased values into the model of a tuple. Apart from this function, Python should additional constructs, such as being groups or the class instances fit in the related category. 258) How to use of return keywords in python? The purpose of a value function get the inputs and return value of some output. The return value of is a Python statement if it’s we can relate to using for sending content following to its caller. 259) What is meant by“Call By Value” In Python? In call-by-value, that argument to be valued expression or value becomes connected to the particular variable in this function. Python command treats that variable being confined within the function-level field. Any changes done to this variable will continue local and order reflect outside the function. 260) What does means by “Call By Reference” In Python? The Call-by-reference we pass as an argument by reference volume, then it is possible because of an absolute source on the use, first then some simple copy. In such any case, any change to the discussion instructions further is obvious to the caller. 261) Difference between Pass and Continue In Python? The continue report executes the loop value to return from the following emphasis. On the opposite, that passing record instructs to make nothing, including the remainder from the code effects as usual. 262) What is meant by R strip() In Python? Python gives the r-strip() system to increases this string value function but allows avoid this whitespace symbols of that end. This r-strip() transmits that numbers value function of right end based upon particular argument value a string specifying the group of numbers to get excluded. 263) What does defined by whitespace in python? Whitespace is representing the characters string value function that we practice for spacing moreover separation. They maintain the“empty” value function symbol. In Python, it could move some tab or space. 264) What is defined Isalpha() In Python? Python has been provided that built-in isalpha() value function for each string manipulating purpose. It reflects the True value function if all types in this string value function are of alphabet type number, else value function it returns False. 265) What does making the CPython Different From Python? Jython means an implementation from some Python programming language that can operate code using on this Java platform. Jython is uiet as compared to CPython and reuires agreement with CPython libraries. A Python implementation is written in C# getting a Microsoft’s .NET framework. 266) Which is the package Fastest Form Of Python? PyPy gives maximum agreement while utilizing CPython implementation as increasing its performance. The tests verified that PyPy is almost five times faster than uniue CPython. 267) What does the meaning of GIL In Python Language? Python is helped to GI(thats means by the global interpreter) which operates some mutex done to ensure introduction into Python objects, synchronizing multiple threads of running these Python bytecodes at the same time. 268) How do Python Thread Safe? Python ensures the reliable path of the threads. It does this GIL mutex to secure synchronization. If a thread fails the GIL lock through any time, when you must to get this system thread-safe. 269) How Does determine the Python Manage The Memory? Python performs a property manager within which operates any of its articles also data structures. This heap manager makes that allocation/de-allocation from heap space to objects. 270) What is a means by “Tuple In Python”? A tuple is a group of specific data structure under Python is immutable. They mean similar to progressions, really prefer the lists. Also, that tuples follow parentheses as including, but these programs have suare sections in their syntax. 271) What does means by split do in Python? This is the opposite of order which mixes or combines strings within one. To do this, you practice this split function value. What it takes is divided or develop up a string and attach that data into each order collection using a specified separator. If none separator is specified while you charge against specific function, whitespace order signify done by default. 272) How do you convert a string to in python? Use the “int” String function value to convert the number to an integer value. Add five value to the integer. Then, the “str” function value it’s to converts the integer function value to a string value function that Python concatenates and print the output value of the answer. 273) How do you reverse any string in Python? This is continued the reverse value function part syntax. It goes outcomes too by doing – by leaving start value and end off value and defining a step of -1, it reverses value function a string function. 274) What does by Python a scripting language? Python is identified as a scripting language because it is an interpreted language also because that is simple to record scripts in it. A defined python communication programming is a language whose programs have to be obtained before they can be run. 275) What language is Python based on? Since largest recent OS continue written in C, compilers/editors before improved high-level languages exist also written in C. Python continues an exception – its various popular/”traditional” implementation means described CPython more is written in C. 276) What is the best free website to learn Python? Python.org. is one the best Python Software Foundation’s official website is further one of the valuable free source locations.SoloLearn- If it refers to a modular, crash-course-like information environment, SoloLearn gives an excellent, step-by-step knowledge program for beginners, TechBeamers , Hackr.io, Real Python. 277) Difference between Python and Java? The Two biggest difference languages signify that the Java is one the statically typed program coding language and Python is one of the dynamical typed. Python is very heavily code programming language but dynamically typed. In certain means types in one code remain confined to strongly Copied something at runtime. 278) How Can you declare the variables function in Python? In Java or C, every variable must be certified before it can be used. Declaring the variable means connecting it to a data type value function. Declaration of variables is expected in Python. You can specify an integer value function to a variable, use it is an integer value function for a while and when specifying a string to the variable function. 279) How to declare the variables function in Python? Python is defined as a dynamically typed variable, which indicates that you have to declare what type each function variable is. In Python, variables do a storage placeholder during texts and numbers variable. It needs to convert one name so that you remain ualified to get this again. The variable does forever assign with an eual sign, replaced by the value of the variable function. 280) How do you reverse the string in python? There is no such inbuilt function for this. The Easiest way for reversing the string in python is using slice which steps backwards, -1. For example: txt = “Hello World” print(txt). 281) WAP to find the given string in the line? This is the WAP for finding the given string in line. Str = ‘Hello world’ If ‘hello’ in str: Print ‘string found’. 282) What is class variable in python? The Class variable are also known as static variables. These variables are shared by all objects. In Python the variables that are assigned the value in class declaration are known as class variables. 283) What is class in Python? The python is “object oriented language”. Almost all the codes of this language are implemented using a special construct called Class. In simple words, “Class” is an object constructer in Python. 284) How can you handle multiple exception in python? To handle multiple exception in python you can use try statement. You can also use these blocks: The try/except blocks The finally blocks The raise keywords Assertions Defining your own exception 285) Can we write else statement try block in python? Yes, it is possible to write else statement try block. try: operation_that_can_throw_ioerror() except IOError: handle_the_exception_somehow() else: # we don’t want to catch the IOError if it’s raised another_operation_that_can_throw_ioerror() finally: something_we_always_need_to_do(). 286) Does Python have do-while loop statements? No, Python doesn’t have any do-while loop statements. 287) What is the difference between range and xrange in Python? In python the range and xrange are two functions that are used repeat number of time in for loops. The major difference between rang and xrange is that the xrange returns the xrange object while the range returns a python list objects. The xrange is not capable for generating the static list at run-time. On the other hand range can do that. 288) Is it possible to inherit one class from another class? Yes, we can inherit one class from another class in python. 289) Name different types of inheritance in python? The inheritance refers to the capability of on class to derive the properties from other class. In python, there are two major types of inheritance. Multiple Inheritance Multilevel Inheritance 290) What is polymorphism? The polymorphism in python refers to various types of respond to the same function. In Greek language the word poly means “many” and morphism means “forms”. This means that the same function name is being used on objects of different types. 291) How do you convert string as a variable name in python? The simplest way to convert string as a variable name is by using vars(). 292) Why do we want to use break statement in while-loop? While-loop can convert into the infinite loop if you don’t use break statement. 293) Why we are using Def keyword for method? The Def keyword in python is used to form a new user-defined function. The def keywords mark the beginning of function header. The functions are the objects through which one can easily organize the code. 294) Why are we using self as first argument? The first argument represents the current instance of the class. The first argument is always called self. With the use of “self” keyword one can easily access the characteristics and methods of the class in python. 295) Why we are using a Python Dictionary? There is huge collection of data values in the python dictionary. These dictionaries are accessed to retrieve the value of the keys that unknown to the users. There is a key: value pair provided in the dictionary which makes it more optimized. 296) What are the use of tuples in Python? A tuple in python is a series of immutable Python objects. These tuples are similar to the list that are used for organizing data to make it easier to understand. If Python has created a tuple in memory, it difficult to change them. 297) What are the use of sets in Python? The Python Set is the collection objects similar to lists and dictionaries. All the elements should be original and uniue and must be immutable. The python sets in comparison with list provides highly optimized method for ensuring whether a specific element is contained in the set. 298) Does Python supports hybrid inheritance? No, python doesn’t support hybrid inheritance. But we can use straight method and round diamond method we can achieve it. 299) What is the uses of middleware in Django? Middleware is responsible for user authentication, session management . 300) Explain Deep Copy in Python There are some values copied already. To store those copied values, Deep copy is used. Unlike Shallow copy, Deep copy will not copy the reference pointers. 301) Define the usage of split If you want to separate a provided string in Python, use split() function. 302) What is the keyword to import a module in Python? Use the keyword ‘import’ to import the modules in Python. 303) List out the different types of inheritance available in Python Hierarchical inheritance, Multi-level inheritance, Multiple inheritance, and Single Inheritance are the four types inheritance available in Python. 304) Define monkey patching You can make dynamic modifications to a module or class during the run-time. This process is called monkey patching in Python. 305) Explain encapsulation Binding the data and code together is known as encapsulation. Example of encapsulation is a Python class. 306) Define Flask in Python Flask, a microframework principally constructed for a minor application with easier reuirements. External libraries must be used in Flask and flask is always ready to use state. 307) Define Pyramid in Python For larger application, you can make use of Pyramid and this is hefty configurable concept. Pyramid affords suppleness and permits the developer to employ the appropriate tools for their assignment. 308) Define Django in Python Similar to Pyramid, Django is built for larger applications and ORM is included. 309) Provide the Django MVT Pattern Django Pattern 310) Why to use Python numpy instead o f lists? Python numpy is convenient, less memory and rapid when compared to lists. Hence, it is better to use python numpy. 311) Mention the floor division available in Python Double-slash (//) is the floor division in Python. 312) Is there any maximum length expected for an identifier? No, there is no maximum length expected for an identifier as it can have any length. 313) Why do we say “a b c = 1000 2000 3000” is an invalid statement in Python? We cannot have spaces in variable names and hence a b c = 1000 2000 3000 becomes invalid statement. 314) Mention the concept used in Python for memory managing Python private heap space is the one used to manage memory. 315) What are the two (2) parameters available in Python map? Iterable and function are the two (2) parameters available in Python map 316) Explain “with” statement in Python As soon as there is a block of code, you can open and close a file using “with” statement in Python. 317) What are the modes to open a file in Python? read–write mode (rw), write-only mode (w), and read-only mode (r) is the three (3) modes to open a file in Python. 318) Try to provide the command to open a file c:\welcome.doc for writing Command to open a file for writing f= open(“welcome.doc”, “wt”) 319) Explain Tkinter in Python An inbuilt Python module helpful in creating GUI applications is known as Tkinter. 320) What does the keyword do in python? The yield keyword can turn ant function into a generator. It works like a standard return keyword. But it will always return a generator object. A function can have multiple calls the keyword. Example: def testgen(index): weekdays = yield weekdays yield weekdays day = testgen(0) print next(day), next(day) Output: Sun mon PYTHON Interview Questions with Answers Pdf Download Read the full article
0 notes
Text
Battle: Bitnami VMs vs Jidoteki VMs
[author: Alex]
I discovered Bitnami a while back, but never took the time to try out their virtual appliances.
I recently stumbled on them again and decided to open up the Bitnami ownCloud virtual appliance, to compare it with a Jidoteki ownCloud virtual appliance I created just for testing. Here’s our post about a RPi ownCloud we built a while back. It’s almost identical to the x86_64 version.
Comparing the VMs
1. The first thing I noticed were the file sizes:
Bitnami: 448MB compressed, 1.5GB uncompressed (on disk) Jidoteki: 90MB compressed, 141MB uncompressed (on disk)
That’s a 10x difference in disk usage for a VM that does the exact same thing.
2. Something interesting about the disks:
Bitnami: 1 x 17GB disk (sda1) w/ext4 Jidoteki: 1 x 8GB disk (sda1) w/ext2, 1 x 250GB disk (sdb1) w/ext4 + LVM
I thought this Bitnami disk setup was weird, since ownCloud can easily require a lot of disk space for storing its data - why doesn’t the the VM ship with a 2nd disk by default? Jidoteki includes a 2nd disk setup with LVM, and automatically expands on boot when the user attaches a 3rd, 4th, 5th, or even 6th disk. Of course that is entirely configurable.
3. Network adapters
Bitnami: PCNet32 (AMD PCnet-PCI II) in Bridged mode Jidoteki: E1000 (Intel Pro/1000 MT Desktop) in NAT mode
I guess this doesn’t matter so much, since the user can change it themselves, but the pcnet32 adapter is a 10mbit adapter, compared with the e1000 which is 1gbit. Bridged mode by default will automatically make the VM accessible on the local network - before it has a chance to be configured. I think that’s a security risk, albeit a rather small one, at the expense of convenience - which is something I usually frown upon. We set ours to NAT by default, which limits access to the user’s local computer - default “secured” (I know, I know, NAT is not security..).
4. VM import and boot times were also quite interesting:
Bitnami: 5mins import, 5mins boot Jidoteki: 30seconds import, 30seconds boot
Import and boot were done with VirtualBox on my MacBook Air. Both will likely be much faster using VMware, or a faster computer. I’m not sure what the Bitnami appliance was doing behind the scenes during the boot process, since all output is suppressed early in the boot process.
Verdict: Jidoteki VMs are better
Ideas for Bitnami:
1) There is almost no output from the moment it boots until the login screen with the Bitnami banner. This made me question whether the boot was working or not.
2) The WRITE SAME error message is common for virtual machine disks. It’s not harmful, but scary. We suppress it with this code early in the boot process:
(See Gist on GitHub)
# Suppress WRITE SAME messages disks=`find /sys | grep max_write_same_blocks`
for i in $disks; do [ -f "$i" ] && echo 0 > "$i" done
3) Replace GRUB with Syslinux for faster boot.
4) Setup LVM by default, so the disk can be expanded in the future. LVM root is sometimes challenging, and quite difficult to recover, so perhaps follow our approach instead ;)
Comparing the VM contents
To compare the contents, I mounted the VMDK disk on a Linux system with the help of qemu-nbd.
1. Too many files
Bitnami: 67123 files and directories Jidoteki: 11 files and directories
No wonder the Bitnami OVA is so big, it has way too much stuff! ;)
Haha ok, so we cheated here. In fact the rootfs on the Jidoteki OVA contains compressed squashfs packages (TCZ extensions) which hold all the files for specific applications. This follows the TinyCore Linux architecture, which allows us to have only a few files on disk representing the entire OS, libraries and applications.
2. Open Source licenses
Bitnami: 77 files found in /opt/bitnami/licenses/, 0 NOTICE file Jidoteki: 8 files found in /usr/share/doc/License/, 1 NOTICE file
Bitnami does a remarkable job of including all licenses for every Open Source software used in the appliance. Unfortunately, there’s no indication on where to obtain the sources. For the record, that’s not good enough for GPL compliance, and it’s useless for people who want to modify the software or to see what patches were applied. The Jidoteki appliances include a NOTICE file in the License directory, with a URL to download all the individual sources, patches, and build scripts, as well as an ISO containing all the sources. Only the GPL requires that, but we do it for all the Open Source software we include.
3. Namespacing and separation
Bitnami: All changes namespaced to /opt/bitnami Jidoteki: All changes namespaced to /opt/jidoteki, except some things
Jidoteki scatters OS customizations all over the place and it’s a bit of a mess, but there’s one important difference: All OS customizations are contained in the rootfs. The base OS (corepure64) is completely unmodified except for the kernel modules which were updated. This is quite different from Bitnami, which is a full OS installation. That means on the Bitnami appliance it’s impossible to determine what parts of the OS were customized, and what shipped by default with the OS.
4. OS File and directory sizes
Bitnami: ~800MB full OS, full documentation, full kernel modules and headers, unstripped binaries, perl and python libs (probably required for Ubuntu). Jidoteki: ~12MB bare minimum OS, no documentation, optimized VM kernel modules, no headers, stripped binaries, no perl or python libriaries.
The OS used in Jidoteki appliances (TinyCore Linux for now...) is ridiculously small and lightweight. They made a great effort to cut out the cruft and leave us with a fully functioning system. The Bitnami OS seems to be completely un-optimized and accounts for half the disk space used in the appliance. That becomes an issue when you want to run multiple appliances side-by-side.
5. App Files and directory sizes
Bitnami: ~636MB for Bitnami, the ownCloud app, and its dependencies Jidoteki: ~125MB for Jidoteki, the ownCloud app, and its dependencies
Bitnami does something interesting here: they include a common directory of shared libraries, locales, and other files which use up 100MB, and which are already included with the OS. It seems they duplicated those files to maintain control of shared libraries independently of the base OS. They also include the full Apache and PHP applications, which also use nearly 100MB. Jidoteki includes a stripped down version of Nginx and PHP instead, which only require 8MB.
Verdict: Jidoteki VMs are better
Ideas for Bitnami:
1) Put more effort into trimming down the base OS. All those libraries and binaries are typically not needed, or are only needed for one specific system. Ideally, you could switch to a smaller base OS which already has everything stripped down - but that’s a lot of work. It’s typically easier to refactor than rewrite ;)
2) Consider open sourcing and distributing the actual sources of your appliances, and separating the Bitnami-specific files from the default Ubuntu files. I understand they are probably all just unmodified base files/packages from Ubuntu, but that doesn’t help me know what changed in the OS you provided.
Comparing security and updates
It seems Bitnami does a great job of keeping on top of security issues. Their changelogs appear to be automatically generated, but they are frequent and quite well up-to-date, so that’s good.
1. Updates to the base OS
Bitnami: looks like a simple apt-get upgrade combined with a Bitnami-specific upgrade process Jidoteki: Jidoteki-specific offline upgrade process
The Bitnami upgrade process seems quite simple, but a lot is left in the hands of the user. The appliance itself must be maintained by the user, requires internet for updates, and can disrupt ownCloud if something breaks. With Jidoteki, we handle the maintenance of the entire OS, along with kernel and CVE security updates. A user only needs to upload our update package to the appliance, and it will automatically update the files on the boot disk. The process is atomic and almost guaranteed to work. A reboot is required to boot the OVA with the latest version.
2. Updates to ownCloud
Bitnami: lots of manual steps and DB migration stuff (occ upgrade) Jidoteki: automatic with auto occ upgrade on reboot
We automated the entire ownCloud app upgrade process, including the DB migrations. This was necessary because ownCloud does things a bit differently. Bitnami leaves it to you with a set of outdated instructions to follow. Fingers crossed if you're successful on the first try ;)
3. Internet updates
Bitnami: yes Jidoteki: no
We aim for our appliances to run behind the firewall, and in fact they don’t even require internet at all. You can literally plug in a USB key with an update package, and then use that to perform an upgrade of a Jidoteki appliance. Of course we have a method of performing online internet updates as well, but that’s not the default. Bitnami defaults to online/internet updates because it’s more convenient. Again I think that’s not the best approach, but probably necessary considering their market.
4. “The user can fudge the appliance factor”
Bitnami: oh yes Jidoteki: nope
With Bitnami, the user has full root access to the appliance, and can pretty much do anything - including break it. Sure it’s the user’s fault if they do, but it significantly increases their support workload from people who have no idea what they’re doing. Jidoteki targets enterprise installations. We make sure to run the OS in memory only, and to have a read-only system to prevent “accidental” changes. This is by design in TinyCore Linux, which is another reason we use that as the base OS.
Verdict: Jidoteki VMs are better
Ideas for Bitnami:
1) Consider a read-only OS to prevent users from making unexpected changes. Some parts of the system can be read/write, but that should be reserved for configuration files and “data”, not libraries and binaries. If someone wants to install their own version of Apache, they should do it on their own Linux installation.
2) When updates are not atomic, bad things can happen. It seems like a repeat of the previous point, but if the user makes a small system change, and applies an update that fails, they could lose all their data - which is a terrible situation.
Comparing system management
This is the last point, thanks for sticking through to the end.
1. Network settings management through the console
Bitnami: login as bitnami, you’re on your own Jidoteki: console gui to configure basic network settings
When people first boot an appliance, the first thing they will need to do is configure the network settings, perhaps either change the IP or specify different DNS servers. Jidoteki appliances always have a simple console boot gui to change those settings - which doesn’t require a login or typing obscure commands.
2. App and other settings management
Bitnami: login as bitnami, use ctlscript.sh or other obscure commands Jidoteki: web Dashboard and REST API for system management, or obscure commands haha
Bitnami appliances don’t include a Management Dashboard, which is unfortunate. They do provide phpMyAdmin and SSH, but everything else seems to be command-line based. Jidoteki includes a user-friendly web Dashboard and a dev-friendly REST API for system management. It’s a bit limited in what it can do, but the basics are there (seeing service status, appliance usage graphs, etc). It’s sufficient for a first-run and for basic maintenance.
Verdict: Well you’ve probably figured it out by now
Conclusion
I didn’t mean this post to knock on Bitnami. Their company seems like it has a really great culture, and I love that they are supporting Open Source and simplifying access to Open Source Software. Their contributions have been valuable so far, but they need to improve in certain areas regarding their virtual machines.
Jidoteki is focused on creating rock-solid virtual appliances destined for the enterprise. We focus exclusively on doing things the correct way, with security and privacy as a top priority. Our solution is available for businesses who want to distribute their software on-premises using the best and simplest approach, along with the ability to automate appliance builds using continuous integration systems such as Jenkins.
Feel free to contact us if you’re looking to build and distribute an on-prem virtual appliance. We’ll be more than happy to discuss your requirements.
0 notes